我想使用带有 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 代理以在 websockets 上使用 HTTPS 的方式。
mosca --very-verbose --key ./tls-key.pem --cert ./tls-cert.pem --credentials ./credentials.json --https-port 3000 --https-bundle --https-static ./ | pino
我应该如何更改浏览器上的 mqtt 客户端代码以通过 HTTPS 连接到 websockets 上的 Mosca 代理?