gpt4 book ai didi

javascript - mosquitto+mqtt.js 得到 "Connection refused: Not authorized"

转载 作者:太空宇宙 更新时间:2023-11-04 02:01:39 25 4
gpt4 key购买 nike

我在CentOS7上构建了mosquitto,并基于mqtt.js构建了node.js客户端。 ,使用

安装
yum install mosquitto mosquitto-clients

本地测试

> mosquitto_sub -h localhost -t test

> mosquitto_pub -h localhost -t test -m "hello world"

工作正常,但是当我运行时:

var mqtt = require('mqtt')
var client = mqtt.connect('mqtt://192.168.1.70')

client.on('connect', function () {
client.subscribe('presence')
client.publish('presence', 'Hello mqtt')
})

client.on('message', function (topic, message) {
// message is Buffer
console.log(message.toString())
client.end()
})

我收到错误:连接被拒绝:未授权

mosquitto.conf 类似于:

pid_file /var/run/mosquitto.pid

persistence true
persistence_location /var/lib/mosquitto/

log_dest file /var/log/mosquitto/mosquitto.log
allow_anonymous true

我使用systemctl restart mosquitto重新启动它几次,这没有帮助。防火墙已关闭并且日志文件保持为空。状态截图: enter image description here

有人可以帮忙吗?

更新:

事实证明,mosquitto 服务因某种原因而损坏,状态显示为Active: active (exited)。我使用 mosquitto -p 1884 -v cmd 在端口 1884 上运行另一个 mosquitto 进程,它工作正常。然后我尝试使用重新加载conf>/etc/init.d/mosquitto 重新加载。它给了我

重新加载 mosquitto 配置(通过 systemctl):mosquitto.service 的作业无效。 [失败]

所以蚊子服务有问题。不是最终的解决方案,但我设法通过删除重新启动安装过程来解决此问题,状态变为绿色,如下所示:

Correct mosquitto status

解决方案

我设法找出它不起作用的原因。我在我的服务器上安装了rabbitmq,它使用它的“rabbitmq_mqtt”,它消耗端口1883。重新分配端口将解决这个问题。

最佳答案

我设法找出原因。我在我的服务器上安装了rabbitmq,它使用它的“rabbitmq_mqtt”,它消耗端口1883。重新分配端口将解决这个问题。问题很简单,但是,是的,CLI 应该给我更多信息。

关于javascript - mosquitto+mqtt.js 得到 "Connection refused: Not authorized",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45747442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com