HTTPS による Web ソケットを使用して、Web ブラウザーで mqtt クライアントを実行したいと考えています。HTTP では問題ありません。HTTP を使用する場合の Web ブラウザー上のコードは次のとおりです。
<script>
var client = mqtt.connect( 'wss://127.0.0.1:3000', {username:'test_user', password:'test_password'} );
client.subscribe("mqtt/test");
client.on("message", function(topic, payload) {
alert([topic, payload].join(": "));
client.end();
});
client.publish("mqtt/test", "testing hello world!");
</script>
これは、スタンドアロンの mosca ブローカーを起動して Websocket で HTTPS を使用する方法です。
mosca --very-verbose --key ./tls-key.pem --cert ./tls-cert.pem --credentials ./credentials.json --https-port 3000 --https-bundle --https-static ./ | pino
HTTPS 経由で Websocket 上の Mosca ブローカーに接続するには、ブラウザーの mqtt クライアント コードをどのように変更すればよいですか?