[英]node.js mqtt client using TLS
我正在嘗試使用以下軟件包使用TLS實現node.js mqtt客戶端;
https://www.npmjs.com/package/mqtt#client
在不使用TLS的情況下運行mqtt客戶端的代碼如下;
var mqtt = require('mqtt')
var client = mqtt.connect('mqtt://test.mosquitto.org')
client.on('connect', function () {
client.subscribe('presence')
client.publish('presence', 'Hello mqtt')
})
client.on('message', function (topic, message) {
// message is Buffer
console.log(message.toString())
client.end()
})
應該如何修改以上代碼以在mqtt客戶端上使用TLS?
mosca MQTT代理是使用以下命令獨立運行的;
mosca --key ./tls-key.pem --cert ./tls-cert.pem --http-port 3000 --http-bundle --http-static ./ | pino
應該足以將URL的protocol
部分更改為mqtts://
mqtts://test.mosquitto.org
。
自簽名證書
使用自簽名證書時,可以將以下選項傳遞給connect
函數(僅用於測試目的):
mqtt.connect('mqtts://test.mosquitto.org', {
rejectUnauthorized: false
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.