繁体   English   中英

如何在树莓派和Windows7之间连接mosquitto服务器?

[英]How can I connect mosquitto server between raspberry pi and windows7?

您好,我正在尝试使用MQTT在Raspberry Pi中使用mosquitto服务器将json数据从r-pi发送到窗口。

在使用mosquitto服务器之前,我使用了“ test.mosquitto.org”。它运行良好。

我的意思是它向Windows发送了一些json数据。

但是,当我在r-pi上打开mosquitto服务器时,Windows放了一些错误消息,这是

opts.protocol = opts.protocol.replace, cannot read property 'replace' of null.

您介意告诉我它正在发生什么并修复它吗?

这是Windows代码上的javascript(我在树莓派中使用python)

    console.log("start");
    var mqtt = require('mqtt');
    var client = mqtt.connect('mqtt://test.mosquitto.org');
    var client = mqtt.connect('192.168.1.2'); // IP of main-broker

    client.on('connect', function () {
        client.subscribe('sensor_A');
    });

    client.on('message', function (topic, message) {
        console.log("Topic: " + topic);
        var parsedData = JSON.parse(message);
        var dataLen = parsedData.length
        console.log('dataLen: ' + dataLen);

        for (var i = 0; i < dataLen; i++) {
            var data = JSON.parse(parsedData[i]);
            console.log('data ' + i + ': ' + data.time + ' ' + data.tem + ' ' + data.hum + ' ' + data.gas);
}
    });

我正在使用两个r-pi,即子经纪人和主经纪人。

子经纪人仅将一些传感器数据作为json发送,而主经纪人控制json数据,然后将其作为json再次发送到Windows。

我认为我的写作很难理解。

简而言之,我不想在r-pi中使用“ test.mosquitto.org”,所以我在r-pi中打开mosquitto服务器将数据发送到窗口,但是,窗口中有错误。

首先,您需要删除连接到test.mosquitto.org的行,因为这只会使事情变得混乱。

其次,您已经从mqtt://本地实例的URL中错过了mqtt:// 错误指出它无法从url中找到协议。

console.log("start");
var mqtt = require('mqtt');
var client = mqtt.connect('mqtt://192.168.1.2'); // IP of main-broker

client.on('connect', function () {
    client.subscribe('sensor_A');
});

client.on('message', function (topic, message) {
    console.log("Topic: " + topic);
    var parsedData = JSON.parse(message);
    var dataLen = parsedData.length
    console.log('dataLen: ' + dataLen);

    for (var i = 0; i < dataLen; i++) {
        var data = JSON.parse(parsedData[i]);
        console.log('data ' + i + ': ' + data.time + ' ' + data.tem + ' ' + data.hum + ' ' + data.gas);
    }
}); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM