编辑:我现在的问题是这个。我可以使用http://www.hivemq.com/demos/websocket-client使用端口80连接到 iot.eclipse.org 。当我通过browsified mqtt.js client连接时,我收到以下错误:
与'ws://iot.eclipse.org/'的WebSocket连接失败:错误期间 WebSocket握手:意外的响应代码:200
我尝试过端口8080,8000,1883和80,没有任何运气。有什么建议吗?
------------下面的原始问题-----------
我想通过websockets使用mqtt连接mqtt代理。我的客户需要在浏览器中运行。
要实现这一目标,我正在使用mqtt.js库并且正在关注these instructions。
在 broker.mqttdashboard.com 上与公共经纪人竞争时,一切正常。但是,当我连接到 iot.eclipse.org 和 test.mosquitto.org 的公共经纪人时,我收到了HTTP错误。
我认为问题是在与第二个经纪人竞争时客户端的配置不正确,但我很难找到任何帮助。
继承人的配置,是否有人可以帮助我?
// Works fine
var options = {
host: "broker.mqttdashboard.com",
port: 8000
};
// Doesn't work
/*var options = {
host: "m2m.eclipse.org",
protocolId: 'MQIsdp',
protocolVersion: 3
};*/
// Doesn't work
/*var options = {
host: "test.mosquitto.org",
protocolId: 'mosqOtti',
protocolVersion: 3
};*/
var client = mqtt.connect(options);
如果您需要更多信息,请告诉我们!
标记
答案 0 :(得分:1)
test.mosquitto.org和iot.eclipse.org都启用了websockets(实际上很长一段时间)。
你已经有了test.mosquitto.org工作 - 关键是使用端口8080。
当前的iot.eclipse.org配置要求连接URL为ws://iot.eclipse.org/mqtt
。
答案 1 :(得分:0)
我不认为 m2m.eclipse.org / iot.eclipse.org 或 test.mosquitto.org 已启用websockets。
broker.mqttdashboard.com 在其下运行HiveMQ,其中启用了本机websockets。
简而言之,我不认为这是您身边的配置问题。为了确保这一点,您可以检查此Web应用程序,看看其他代理是否可以使用它:http://www.hivemq.com/demos/websocket-client/