EMQ 问答社区

使用微信小程序连接开源版Broker的问题

环境信息

  • EMQ X 版本:emqx x broker 4.3.3
  • 操作系统及版本:centos 7.9
  • 其他

问题描述

开源版 broker 配置了域名和SSL,微信小程序(mqtt.js)在开发环境可以正常连接,但是用微信真机预览就一直无法连接,不管是ws和wss都无法连接。

但是使用emqx dashboard中的websocket工具都可以连接ws,wss,mqtts。

1、dashboard websocket测试成功:

2、使用ws或者wss连接cloud.emqx.cn成功:

3、使用ws或者wss连接自己的开源broker都失败:

小程序之前一直正常连接 cloud.emqx.cn的云broker,说明小程序正常;
dashboard websocket可连接自己的开源版broker,说明开源版broker也正常?
那到底是哪里的问题,导致小程序直接连开源版broker时连接不上?

建议你通过抓包或者错误LOG来定位问题。

解决了,mqtt.js的问题,重新找了个未压缩的库文件就好了。 具体原因还没来得及看。
之前一直怀疑是免费数字证书的问题,因为在https://myssl.com/ssl.html这个网上报告我的域名等级不合规。
按照报告中的整改要求修改emqx的wss.ciphers时又发现emqx好像不支持报告推荐的加密算法。
目前域名等级还是F

我也出现了相同的问题, 我原本 4.2.7 版本正常, 后来换了台服务器升级到 4.3 就不行了, 然后我又把版本回退了


抓包出现 HTTP/1.1 400 Bad Request\r\n