有人可以向我解释通过Websocket传输MQTT而不是通过MQTT直接传输时的优缺点吗? 。我计划在ESP8266上的项目上通过websocket使用MQTT。我处于无法直接使用MQTT的情况下
答案 0 :(得分:2)
对于没有基于浏览器的客户端,通过Websockets进行MQTT的主要好处是,当您没有直接连接到代理的客户端时,它允许您使用HTTP代理(假设客户端也支持代理)。
另一个优点是,如果您将设备和基于Web的MQTT客户端混合使用,则只需要公开一个端口即可为两组客户端提供服务。
您确实需要为通过Websocket的MQTT使用更大的连接/设置有效负载付出代价,因为您需要在正常的MQTT连接开始之前处理HTTP升级消息。