2

Cmakeを使用してプロジェクトファイルを生成し、websocketsを有効にしてVisual Studioでmosquittoを構築しました。libwebsockets-1.4 を使用しました。

このブローカーを websocket リスナーで実行すると、次の図のように、websocket を介してポート 8000 でリッスンが開始されました。

ここに画像の説明を入力

ここで、PAHO Websocket クライアントを使用して、ブローカーに接続しようとしました

client = new Paho.MQTT.Client("localhost", 8000, "abc123");

client.connect({onSuccess:onConnect});

function onConnect() {
    console.log("onConnect");
}

詳細なログを記録しても、ブローカーのログには何も表示されません。そしてブラウザコンソールで私は得る

WebSocket connection to 'ws://localhost:8000/mqtt' failed: Error during WebSocket handshake: net::ERR_CONNECTION_RESET

その後、 で試したところ、test.mosquitto.org:8080問題なく接続できました。

PS : 次に、mosquitto 1.4.7 と libwebsocket 1.6 の組み合わせを試しましたが、次のビルド エラーが発生しました。修正を提案してください。

ここに画像の説明を入力

次の試みは mosquitto 1.4.2 と libwebsockets 1.4 で、mosquitto の構築に問題はありませんでした。通常の tcp クライアントを使用したときは問題なく動作しましたが、websocket クライアントからの接続メッセージが送信されたときに mosquitto.exe がクラッシュしました。

何がうまくいかなかったのか、どうすればこの問題を解決できますか? Windows で websocket をサポートする mosquitto の展開に成功した人は、助けてください。

4

1 に答える 1