微信小程序http 400问题

在v0.14.140900版本的wechat小程序开发工具中做网络请求,直接使用微信的网络请求代码debug过程中发生了400 (Bad request)错误。

wx.request({
  url: 'test.php', //仅为示例,并非真实的接口地址
  data: {
     x: '' ,
     y: ''
  },
  header: {
      'content-type': 'application/json'
  },
  success: function(res) {
    console.log(res.data)
  }
})

后来进过搜寻资料是因为微信开发工具升级后请求头header发生了改变,而微信开发文档中还没有发生改变。

解决办法是将上面的网络请求代码中header部分代码修改下:

 header: {
                 "Content-Type":"json"
            },

还有一种情况是,get请求的时候,参数中如果有空格,必须用data{}的方式传参数,不能直接把参数拼装在url里,如果把有空格的参数拼装在url里,在某些vivo的机器上,也会出现http 400的问题。