收藏
回答

wx.request post请求偶尔丢失部分参数?

wx.request({
  url: 'test.php', //仅为示例,并非真实的接口地址
  data: {
    x: '',
    y: '',
    z: ''
  },
  header: {
    'content-type': 'application/x-www-form-urlencoded' // 默认值
  },
  success (res) {
    console.log(res.data)
  }
})
像这样的请求中写死的三个参数,但是后台收到的数据中偶尔会没有z参数


回答关注问题邀请回答
收藏

1 个回答

  • 胖丫么胖
    胖丫么胖
    07-07

    你看你的network有没有发。有发后端没收到就是后端问题。

    07-07
    有用
    回复 12
    • 真有毅丝
      真有毅丝
      07-07
      这个是在线上偶现的,后台发现问题之后,我调试,之后手动去掉z参数之后,才和后台的报错一样,前端的参数基本就像这样写死的
      07-07
      回复
    • 胖丫么胖
      胖丫么胖
      07-07回复真有毅丝
      有没有一些赋值操作呢?有用过深拷贝吗
      07-07
      回复
    • 真有毅丝
      真有毅丝
      07-07回复胖丫么胖
      和上面有一点区别的话,就是data在外边创建的,不是上面的方式,然后赋值给data
      07-07
      回复
    • 胖丫么胖
      胖丫么胖
      07-07回复真有毅丝
      赋值 用下深拷贝。建议封装请求。https://developers.weixin.qq.com/community/develop/article/doc/000ca6b0ee0ff858be0a5ba5956413
      07-07
      回复
    • 真有毅丝
      真有毅丝
      07-07
      const app = getApp()
      let postData = {
        //这里填写请求参数,基础参数里的appKey等参数可在这里覆盖传入。
      }
      app.postAjax(url, postData).then((res) => {
          if (res.success) {
          //这里处理请求成功逻辑。
          } else {
          //wx.showToast大家觉得麻烦也可以写到util.js里,调用时:util.toast(msg) 即可。
            wx.showToast({
              title: res.msg || '服务器错误,请稍后重试',
              icon: "none"
            })
          }
      }).catch(err => {
       //这里根据自己场景看是否封装到request.js里
         console.log(err)
      })


      就像你写的封装里面 postData也是赋值,现在问题是,我在postData写死的字段,后台接收不到
      07-07
      回复
    查看更多(7)
登录 后发表内容
问题标签