当浏览器尝试连接到我在 Firefox 中的 mosquitto 服务器时,我在暂存阶段遇到了这个错误,但在开发阶段却没有:
SecurityError: The operation is insecure.
我没有使用 ssl 运行系统,我知道我应该解决这个问题,但暂时我想让它工作。
function mqtt() {
// Create a client instance
client = new Paho.MQTT.Client('localhost', 9091, "", "tablet_1");
// set callback handlers
client.onConnectionLost = onConnectionLost;
client.onMessageArrived = onMessageArrived;
client.reconnect = true
willMessage = new Paho.MQTT.Message("Rescue me");
connectOptions = {
userName: 'server',
password: '1234',
// willMessage: willMessage,
onSuccess:onConnect,
cleanSession: true,
reconnect: true,
useSSL: false
}
// connect the client
client.connect(connectOptions);
}
这是我在 mosquitto 中的端口配置:
listener 1883
listener 8883
cafile ca.crt
certfile server.crt
keyfile server.key
tls_version tlsv1.2
listener 9091
protocol websockets
最佳答案
如评论中所述,当通过 https 加载主机页面时,浏览器会阻止非安全内容。
您可以通过点击 URL 栏中的屏蔽来强制混合内容,但这不是正确的方法。
正确的解决方案是在所有地方(甚至在开发/暂存中)运行 HTTPS/TLS。
关于javascript - 如何通过 paho mqtt js 客户端强制进行非安全连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53635726/