收藏
回答

wx.connectSocket在“多账号调试”功能中,虚拟账号的网络http头设置失败

框架类型 问题类型 操作系统 工具版本
小程序 Bug Windows 1.06

一、问题描述:

在使用微信开发者工具的多账号调试功能时,虚拟账号的窗口中执行的wx.connectSocket函数所传的http头丢失了,(在开发者工具的“网络”调试面板中,就可以看到的http请求头中缺失了所设置的http头)。而主窗口的“网络”调试面板中则是正常存在的。导致虚拟账号发出的websocket握手网络请求http头错误,既然和主窗口是同一套代码,不应该出现此不一致性问题。是个bug,请确认修复!

二、复现步骤:

环境:微信开发者工具版本:1.06.xxx(可能不止此版本)。微信基础库版本:3.4.3。

复现步骤很简单:

(1)在随便一个微信小程序的onLaunch函数里,加上如下代码:


  onLaunch: function () {

  wx.connectSocket({

url: 'wss://tcb-ws.tencentcloudapi.com',

header:{

  'content-type': 'application/json',

  'Authorization': 'Bearer aaaa',

  'Authorization2': 'Bearer aaaa2'

}

  });

},

(2)然后启动工具菜单中的“多账号调试”,选中一个虚拟账号,点确定打开虚拟账号的窗口。

(3)分别查看主窗口和该虚拟账号窗口的“网络”调试面板里,所发送的wss://tcb-ws.tencentcloudapi.com这条报文的http请求头,观察是否包含所设置的Authorization': 'Bearer aaaa。结果会发现主窗口里是包含的,而虚拟账号窗口里的则丢失了。

三、预期:

wx.connectSocket函数设置的http头,在虚拟账号的窗口中执行的时候,也能像主窗口的一样,不丢失。

四、附录:

(1)如下,就是主窗口的,是正常的,http头是在的。

(2)如下是虚拟账号窗口的,是错误的,所设置的http头丢失了:

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

2 个回答

  • 嘿嘿~~嘿嘿~~
    嘿嘿~~嘿嘿~~
    12-16

    也是遇到这个问题了

    12-16
    有用
    回复
  • z
    z
    09-19

    几个月了,没人理?

    09-19
    有用
    回复
登录 后发表内容