react-native - React Native 中连接和订阅 MQTT 服务器的问题
问题描述
我已经构建了一个 MQTT 服务器(mosquitto),我想连接并订阅 React Native 中的服务器。
域名:mqtt.brilcom.com / 端口:1883
我要订阅的主题是“Pico-Home/ack/240AC4223772”。
我正在使用https://github.com/davesters/rn-native-mqtt包。但是,它似乎没有连接或订阅服务器。
请在下面查看我的代码:(React Native.js)
useEffect(() => {
const client = new Mqtt.Client('tcp://mqtt.brilcom.com :1883');
client.connect({
clientId: 'CLIENT_ID',
}, err => {});
client.on(Mqtt.Event.Message, (topic, message) => {
console.log('Mqtt Message:', topic, message.toString());
});
client.on(Mqtt.Event.Connect, () => {
console.log('MQTT Connect');
client.subscribe(['Pico-Home/ack/240AC4223772'], [0]);
});
client.on(Mqtt.Event.Error, (error) => {
console.log('MQTT Error:', error);
});
client.on(Mqtt.Event.Disconnect, (cause) => {
console.log('MQTT Disconnect:', cause);
});
}, []);
上面的代码有什么问题吗?另外,如何连接和订阅服务器?
mosquitto_sub -h mqtt.brilcom.com -p 1883 -t Pico-Home/ack/240AC4223772
Mosquitto_pub -h mqtt.brilcom.com -p 1883 -t Pico-Home/ack/240AC4223772 -m "20210508|0006|0100|0701|00db|0302|e803|127.0.0.1"
在 cmd 中尝试这些命令。
任何帮助表示赞赏。
解决方案
推荐阅读
- json - 为什么没有使用 circe 将我的区分字段添加到我的编码案例对象中?
- python - 使用 \r\n 时的 Python 额外行写入(在 VS Code 中)
- visual-studio - ASP.NET Core:“该项目不知道如何运行配置文件 Docker。” 在 Visual Studio 2017 上
- visual-studio - Visual Studio 中的 WebDeploy 无法创建 SSL\TLS 安全通道
- wordpress - wordpress 主题 - 链接(相对或硬编码)
- c# - 如何从方法返回asp.net视图中的资源
- c# - EF Core vs EF6:通过添加导航属性保存
- reactjs - 将 React 版本 15.6.2 升级到 16.6.3 时面临的问题
- kotlin - 启用 proguard 后无法访问 kotlin 类中使用的伴随对象
- r - 计算字符串中连续字母的最大值