近期做了一个微信小程序,体验版本发生这样的问题。微信小程序的后台是一个SpringBoot搭建的后台,有自己的登录页面,有mysql作为后台数据库,在开发者平台上测试一切正常,但是体验版本全面测试的时候,发现苹果手机测试一切正常,但是安卓手机只有第一个登录页面是正常的,能发出请求(登录页面是访问的自己搭建的后台),进去之后,应该显示一个从数据库取到的登录账户对应的任务列表,但是这个任务列表时而能返回数据,时而不能返回,监测后台,不返回数据时,压根没有发出请求到后台。https这些证书都已经配置过了,最让人奇怪的是,为什么安卓手机有时能收到数据,有时收不到,原因是什么呢?发请求是写在登录跳转页面的onload函数中。放在onready中同样不行。
有没有同样现象的朋友,怎么解决呢?一点思路都没有
登录的js代码
fetch('/login', logindata, 'GET').then(
function(res) {
var result = res.data.result;
if (result == "success") {
var toastText = '登录成功'
wx.clearStorage()
wx.setStorageSync("account", account)
let role = page.data.role
let fdata = {
account: account
}
if (role == "0") {
wx.redirectTo({
url: '../newtask/newtask1
})
在newtask.js的onLoad()中,发起请求,从后台请求数据
let page = this;
let account = wx.getStorageSync("account") //在需要数据的页面取值,取到登录的学号
wx.request({
url: "https://XXXXXXXXX:8080/newtasklist?account=" + account,
header: {
'Content-Type': 'application/json;charset=UTF-8;'
},
method: "GET",
data: {
account: account
},
success: function (res) {
console.log(res.data)
let list = res.data.newtaskList;
let endlist = res.data.endList;
console.log(list);
if (list == null) {
let toastText = '没有新任务'
wx.showToast({
title: toastText,
icon: '',
duration: 2000
});
} else {
page.setData({
newtasklist: list,
newlen: list.length,
endlist: endlist
});
}
看起来很简单的逻辑,就是登录成功后,跳转到该账号对应的任务界面,获取他的任务列表,(在onLoad中完成的,总怀疑这里有问题),表现出来就是有时能获取到,有时获取不到,是空数组。苹果无问题,安卓手机有这个问题存在。开发者平台也无问题。
各位大神帮帮忙,困扰很久!