
eclipse paho mqttasyncclient 连接 emqx 失败的解决方法
在使用 org.eclipse.paho.client.mqttv3 连接本地部署的 emqx 时,您遇到了用户名密码认证失败的问题。异常信息提示 "错误的用户名或密码"。
检查了 mqttx 协议调试工具后,您确认了用户名和密码是正确的。经过检查,您发现 java 代码中缺少了连接选项设置,导致用户名认证未启用。
要解决此问题,需要在 mqttasyncclient.connect 方法中添加第三个参数,如下所示:
mqttClient.connect(connOpts, null, connStatus);
- 第一个参数 connopts 是 mqttconnectoptions 连接选项。
- 第二个参数现在为 null,表示不使用回调函数监视连接状态。
- 第三个参数 connstatus 是连接状态监听器。
添加了此参数后,mqttasyncclient 将启用用户名认证。您应该能够成功连接到 emqx。










