wx.request 返回数据使用jsonp格式
发布于 6 年前 作者 weitan 17020 次浏览 来自 问答

 wx.request 返回数据可以使用jsonp格式吗?如果可以如何操作。现在我们想后台请求返回的是jsonp格式数据,不知如何操作,需要改后台的返回数据格式吗?

3 回复

我现在是将返回的jsonp作为一个字符串,然后使用

split("\"")

将里面的数据截取出来分别赋值给其他几个字符串,然后做的处理。这样也可以使用

JSONP 是解决前端 AJAX 跨域的手段之一,小程序里不存在跨域的问题,因为它根本不是 AJAX 请求。

要么服务端做妥协,提供一套正常的非 JSONP 的接口;要么客户端做妥协,把响应结果当作纯字符串处理,比如看你这个报文,把响应结果开头的 “myfunction(” 和结尾的 “)” 都 replace 掉,剩下的部分 JSON.parse 一下就好了。

自顶一下,在代码中res.data是jsonp格式如图:

,但是只是打印res的话如图

wx.request({

url: url,

scriptCharset:“utf-8”,

header: {

‘content-type’: ‘json’

},

success: function (res) {

console.log(res.data);

var avatarID = res.avatarid;

var playerUin = res.uid;

var avatarIDMD5 = res.avatar_md5;

},

fail: function (err) {

console.log(err);

}

})

回到顶部