收藏
回答

微信小程序的 wx.request POST方法的http报文格式不符合HTTP 1.1协议规范!

框架类型 问题类型 终端类型 微信版本 基础库版本
小程序 Bug 微信iOS客户端 8.0.58 3.8.3

微信小程序的 wx.request POST方法的http报文格式不符合HTTP 1.1协议规范:

HTTP报文的头部字段与正文之间的间隔是两个空行,按HTTP 1.1协议规范应为一个空行。

代码如下:

wx.request({

             url: 'http://192.168.8.1:80/upload_finish', 

             method: 'POST', 

             header: {

                 'Content-Type': 'application/x-www-form-urlencoded' ,

              },

              data: {

                  user: ssid_get,

                  password: pwd_get

              },

              success(res) {

                       //console.log(res.data); 

                       that.setData({massage1:"设置成功!"});

                       that.setData({hidden_close:false});

                       that.modalTap2();   

               },

              fail(err) {

                       console.log('请求失败', err); 

                       that.setData({massage1:"设置失败!"})

                       that.modalTap2();

               },

抓包后报文如下:

POST /upload_finish HTTP/1.1

Host: 192.168.8.1

Connection: keep-alive

Content-Length: 59

content-type: application/x-www-form-urlencoded

charset: utf-8

User-Agent: Mozilla/5.0 (Linux; Android 12; ADY-AL10 Build/HUAWEIADY-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/134.0.6998.136 Mobile Safari/537.36 XWEB/1340095 MMWEBSDK/20250201 MMWEBID/457 MicroMessenger/8.0.58.2841(0x28003A3C) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64 MiniProgramEnv/android

Accept-Encoding: gzip, deflate

(注释:第一个空行)

(注释:第二个空行)

user=%E8%92%99%E6%89%98%E7%A7%91%E6%8A%80&password=12345678


因为这个BUG后端读取数据会出错,请微信小程序开发人员马上修补这个BUG. 拜托

回答关注问题邀请回答
收藏
登录 后发表内容