小程序
小游戏
企业微信
微信支付
扫描小程序码分享
确定当前websocket连接数量只有一个,上次就是2.12.2的错误,这次还是,希望尽快处理
更新========
7 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
这个是预期现象,是 2.12.2 为了支持在插件中通过本地局域网 ip 进行网络请求的特性做出的改动。为了支持这个特性,SocketTask 刚创建出来的时候,需要进行一些异步的准备工作,处于挂起状态,因此没有办法支持 wx.connectSocket 之后直接同步去取属性;更新前如果在小程序启动时就创建任务也是会遇到同样情况的。另外,readyState 本身是我们内部使用的字段,其实是从来没有在文档说明过的,既不推荐使用,也不保证它的可用性;如果需要监听和获取 SocketTask 的状态,推荐使用 onOpen、onClose、 onError 等监听方法去获取
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
这都2023了,我的程序报了同样的错误,请问楼主后来解决了吗?
我这边也是,插件内基本不可用了。线上很多小程序在用插件,这坑挖的,啥时候解决这个问题!!! 总不能让别人小程序都强制升级吧
用插件使用websocket 就出问题,用源码使用正常,这是什么问题
8月21日就是2.12.2出问题,今天又是,没过几天啊,难道就是代码回滚下今天又推上线了?
请具体描述问题出现的流程,并提供能复现问题的简单代码片段https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html
在插件内是必现的问题,基础库更新到2.12.2后,在插件内创建websockt对象 readyState 属性消失了,如果不能快速解决,可不可以回滚基础库版本啊?
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
这个是预期现象,是 2.12.2 为了支持在插件中通过本地局域网 ip 进行网络请求的特性做出的改动。为了支持这个特性,SocketTask 刚创建出来的时候,需要进行一些异步的准备工作,处于挂起状态,因此没有办法支持 wx.connectSocket 之后直接同步去取属性;更新前如果在小程序启动时就创建任务也是会遇到同样情况的。另外,readyState 本身是我们内部使用的字段,其实是从来没有在文档说明过的,既不推荐使用,也不保证它的可用性;如果需要监听和获取 SocketTask 的状态,推荐使用 onOpen、onClose、 onError 等监听方法去获取
1,如果不已readyState作为判断连接状态的标志,使用 onOpen、onClose、 onError 等监听方法去获取的连接状态是不稳定的,容易在使用send方法时出现报错 readyState is not OPEN。
2,如果可以在onOpen内可以表示稳定发送数据,经过之前测试,在收到onOpen监听时立刻发送数据包,容易出现readyState 为connecting状态,导致发送数据包失败异常。
3,如果只使用 onOpen、onClose、 onError 等监听方法去获取连接状态,是不是获取的状态不完善?众所周知,websocket连接状态一共有四种,CONNECTING,OPEN,CLOSING,CLOSED。如果没有准确的状态反馈,我在执行其他操作时,没有准确的把握,比如处于CLOSING时,再执行close方法就会造成websocket连接异常。
4,在官方分享的开发经验,也是建议用readyState判断的(https://developers.weixin.qq.com/community/develop/doc/0002a4fcfe4b00b104772017351409?highLine=websocket)
5,我理解由新功能产生的改动,但是不理解为什么将websocket底层提供的准确度高的属性直接进行砍掉?
基于以上理由,为了小程序稳定的角度,建议回滚2.12.1版本基础库,以及重新考虑基础库2.12.2版本兼容问题。感谢回复,希望对以上问题进行解惑。
这都2023了,我的程序报了同样的错误,请问楼主后来解决了吗?
我这边也是,插件内基本不可用了。线上很多小程序在用插件,这坑挖的,啥时候解决这个问题!!! 总不能让别人小程序都强制升级吧
用插件使用websocket 就出问题,用源码使用正常,这是什么问题
8月21日就是2.12.2出问题,今天又是,没过几天啊,难道就是代码回滚下今天又推上线了?
请具体描述问题出现的流程,并提供能复现问题的简单代码片段https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html
在插件内是必现的问题,基础库更新到2.12.2后,在插件内创建websockt对象 readyState 属性消失了,如果不能快速解决,可不可以回滚基础库版本啊?