<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/ESA2GJK1DH1K_A/" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
一.在2020/10/29号之前购买教程的用户微信小程序连接不上服务器问题
原因:
服务器的反向代理去掉了
proxy_set_header Sec-WebSocket-Protocol mqtt;
more_clear_headers Sec-WebSocket-Protocol;
以兼容市面上mqtt.js 和 mqtt.min.js
解决方案:
在 paho-mqtt.js 文件搜索 url: wsurl
并在下面增加一个参数 protocols: ['mqtt'],
二.微信小程序的封装MQTT.js包做了程序优化
1,去掉了原先的定时器检测掉线,增加了软件自动连接参数
用户可重新下载源码,替换原先的 mqtt.js即可.
三,关于微信小程序安装到手机以后需要在调试模式下才能连接服务器的问题
问题原因:
需要在微信小程序平台上设置域名白名单
这个地方根据自己的微信小程序访问的域名进行设置
四,Android当前使用的MQTT包不好使
当前使用的版本是 mqttv3-1.2.2.jar ,这个版本接收并发数据有问题!
请用户使用mqttv3-1.2.0.jar
五,单片机程序MQTT底层包BUG
底层包没有校验MQTT数据个数,会导致接收到错误数据也认为是MQTT数据
致使各种判断失误,最严重的的莫过于掉线也不能判断处理!
修改如下:
uint16_t msg_len; msg_len = mqtt_get_total_length(buffer, length); if(msg_len!=length)msg_type=0;//´íÎóÏûÏ¢