7

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 クライアント コードをどのように変更すればよいですか?

4

2 に答える 2

2

代わりに自己署名証明書を使用したために問題が発生しました -次を使用できます。

  1. フロントとしてcloudflareをサービスします(無料プランではhttpsとwssを使用)。雲フレアについて読む
  2. letsencryptから一時的な証明書を取得します(無料プランがあります)。letsencryptについて読む
  3. 信頼できる有料証明書を取得する
于 2016-10-22T19:29:35.113 に答える