我正在通过安全 Websockets 连接到 MQTT RabbitMQ 实例(Angular 6 使用此模块,import { Paho } from 'ng2-mqtt/mqttws31'
)。它连接成功,但套接字连接似乎在一分钟后关闭。无论 KeepAliveInterval 设置为多少,它似乎总是在一分钟后关闭套接字连接。
这是我的客户端连接:
this.client.connect({ userName: "username", password: "password", onSuccess: this.onConnect.bind(this), useSSL: true, timeout: 60, keepAliveInterval: 6000 });
我不确定问题是出在 RabbitMQ 服务器还是 Angular 端。任何帮助将不胜感激!
尝试将 keepAliveInterval 设置为 30。
我怀疑你的MQTT服务器默认的keepalive设置为60秒,这意味着如果在这段时间内没有与客户端进行任何通信,它很可能会在60秒后很快关闭连接。您设置的 keepAliveInterval 字段最多应与服务器的 keepalive 一样大,因为这决定了在出现安静连接时客户端对服务器执行 ping 操作的频率。
Here http://docs.oasis-open.org/mqtt/mqtt/v5.0/cs02/mqtt-v5.0-cs02.html#_Toc514345317KeepAlive 是在 MQTT 规范中定义的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)