一. 说明
微信小程序在ios真机环境下网络请求报null is an object 错误。
image.png
二、我的代码是:
freshUserInfo() {
var that=this;
wx.request({
url: getApp().globalData.url + "/app/user/info",
data:{token:wx.getStorageSync("token")},
success:function(e){
if(e.data.code==200){
wx.setStorageSync("UserInfo",e.data.data)
that.setData({
userAvatar: wx.getStorageSync("scope").avatarUrl,
challengeChance:e.data.data.answernum,
nowanswer: e.data.data.nowanswer
});
}
}
}
三、排查
1.代码中的e.data.data.nowanswer ,在ios真机中变成了a.data.data.nowanswer。
2.既然请求失败那么就捕获一下失败的信息。
四、解决
网络请求中加入代码:
fail:function(res){
console.log("网络请求失败....:"+res.errMsg)
}
})
加入后IOS真机不在报错,至于是啥原因还不清楚,对于微信小程序底层网络封装并不是太了解,如果有知道的朋友还请指教。