支付宝小程序一个http请求在开发工具及在IOS真机下测试都是正常的,但是在安卓的机器下测试,发现请求无法发送到服务器,返回的错误代码为:14,官方文档的错误代码里显示该错误代表:解码失败
代码示例如下:
my.httpRequest({
url: app.globalData.domain_url + '/bg/updateGwcXzjsBatch.do?session_key=' + app.globalData.session_key,
data: JSON.stringify(chooseList),
headers: {
'Content-type': 'application/json'
},
method: 'POST',
success(res) {
}
})
该后台方法返回的内容格式为JSON,但是安卓真机里硬是无法发送出请求。
经过多次测试,在my.httpRequest的API中声明返回内容为text即可正常调用,但是返回的内容会成为字符串形式。因此,需要将如上的方法修改为如下:
my.httpRequest({
url: app.globalData.domain_url + '/bg/updateGwcXzjsBatch.do?session_key=' + app.globalData.session_key,
data: JSON.stringify(chooseList),
headers: {
'Content-Type': 'application/json'
},
dataType: 'text',
method: 'POST',
success(res) {
// 将结果还原为json
let responseData = JSON.parse(res.data);
}
})
修改后在真机下进行测试,问题得到解决,望对遇到同样问题的同学们有所帮助。
网友评论