MQTT 오류: 연결이 끊어졌습니다.

MQTT 오류: 연결이 끊어졌습니다.

"리스너" 콘솔을 설정합니다:

mosquitto_sub -h test.mosquitto.org -t "myTopic" -v

mosquitto_pub반환 오류:

pi@raspberrypi:~ $ mosquitto_pub -h test.mosquitto.org  -t 'myTopic' -m 'hello world'
**Error: The connection was lost.**

구문 문제를 진단하기 위해 명령줄에서 어떤 단계를 수행할 수 있습니까?

고쳐 쓰다:

MQTT 서버를 iot.eclipse.org오류 없이 교체하고 예상대로 페이로드를 반환합니다.

리스너 콘솔 설정:

mosquitto_sub -h iot.eclipse.org -t "myTopic" -v

페이로드 보내기:

mosquitto_pub -h iot.eclipse.org -t 'myTopic' -m 'hello world'

mosquitto_pub반품:

pi@raspberrypi:~ $ mosquitto_sub -h iot.eclipse.org -t "myTopic" -v
myTopic hello world

포스트 페이로드:

pi@raspberrypi:~ $ mosquitto_pub -h test.mosquitto.org  -t 'myTopic' -m 'hello world'

MQTT 브로커를 변경하면 구문 오류가 표시되지 않지만 원래 테스트에서 오류가 반환된 이유에 대한 의문이 남아 있습니다.

답변1

~에서웹 페이지:

이는 출시되지 않은 코드나 실험적인 코드를 자주 실행하며 원하는 만큼 안정적이지 않을 수 있음을 의미합니다.

나는 같은 문제가 있었지만 iot.eclipse.org성공적으로 사용할 수있었습니다. 트래픽이 많기 때문에 대신 특정 테마를 사용하는 것이 좋습니다 #. 테스트하려면 아래 옵션 중 하나를 선택하세요.공공중개인 목록등록이 필요하지 않습니다.

답변2

--insecure 옵션을 추가하면 이 오류가 해결되는 것으로 나타났습니다.

mosquitto_pub -t mqtt-topic -m "sample-msg-1" --insecure

내 mqtt 서버는 모두 내부에 있고 포트는 모두 docker 내부에 있으므로 --insecure 옵션은 실제로 내 경우에는 추가 노출을 추가하지 않습니다. mqqts(암호화됨) 대신 mqqt(암호화되지 않음)를 사용해야 한다고 생각했기 때문에 이것이 왜 나에게 효과적인지 모르겠습니다.

관련 정보