调用wx.request后,返回值为乱码

发布于 6 年前作者 yeping634 次浏览最后编辑 6 年前来自 ask

调用wx.request后,返回值为乱码。如何解决?能否对返回值进行再编码,如果不能如何解决?

我的代码片断如下:

wx.request({
          url: 'https://省略隐藏.../miniProgramInterface/login.action',
          data:{
            user:'1a用户',
            password:'2b密码',
            code:'3c代码',
          },
          header:{
            'content-type':'application/x-www-form-urlencoded',
          },
          method:'POST',
          success:function(res){
            console.log(res.data)
          },
        });
7 回复
myi
myi1 楼6 年前

浏览器打开连接看看乱码不?

看看 响应头   Content-Type:  有没有指定编码

例如—>

Content-Type:application/json;charset=utf-8

li30
li302 楼6 年前

感觉像是你服务器代码用GBK去识别的uft-8

jing83
jing833 楼6 年前

 

zhouqiang
zhouqiang4 楼6 年前

楼主问题解决了吗?

jiehu
jiehu5 楼6 年前

微信开发者工具里面一切正常,手机运行时乱码,代码如下:

data: {

  phoNo: ‘’,

  area: ‘’

},

wx.request({      

  url: ‘https://tcc.taobao.com/cc/json/mobile\_tel\_segment.htm?tel=’ + this.data.phoNo,      

  header: {      

    ‘content-type’: ‘application/json’ 

  },      

//以下也试过,不行

 //header: { ‘Content-Type’: ‘application/json;charset=UTF-8;’ },

//header: {‘Content-Type’: ‘application/x-www-form-urlencoded;charset=GB-2312’},

 //header: {‘Content-Type’: ‘application/x-www-form-urlencoded;charset=GBK’},

success(res) {

    console.log(res.data)

    self.setData({       

      area: res.data    

    });      

  }    

})

https://tcc.taobao.com/cc/json/mobile\_tel\_segment.htm?tel=17312319729

用以上地址通过浏览器访问,一切正常!

lihao
lihao6 楼6 年前

返回值乱码 不是后台的事情嘛

fangzhang
fangzhang7 楼4 年前

看下返回的数据啥样的,顺便尝试下JSON.parse