javascript - 无法在 FireFox 中建立与 socket.io 的连接(xhr 轮询错误)

标签 javascript node.js firefox socket.io

我正在使用 socket.io 1.4.8 和 firefox 48。我有一个在 chrome 中运行良好的示例代码:

// Server
var express = require('express');
var app = express(); var fs = require('fs');
var option = {
    key: fs.readFileSync('key.pem'),
    cert: fs.readFileSync('cert.pem')
};
var https = require('https').createServer(options, app).listen(process.env.PORT || 3000);
var io = require('socket.io')(https);

io.on('connection', function(socket) {
    socket.on('login', function(username) {
        console.log('[login]', username);
    };
}

// Client
var socket = io('https://127.0.0.1:3000');
var username = 'test';
socket.emit('login', username);

但是当我在 firefox 中运行时,我得到了一个Error: xhr poll error. 这是来自客户端的日志:

socket.io-client:url "parse https://127.0.0.1:3000" +0ms
socket.io-client "new io instance for https://127.0.0.1:3000" +3ms
socket.io-client:manager readyState closed +3ms
socket.io-client:manager "opening https://127.0.0.1:3000" +1ms
engine.io-client:socket creating transport "polling" +1ms
engine.io-client:polling polling +1ms
engine.io-client:polling-xhr xhr poll +2ms
engine.io-client:polling-xhr "xhr open GET: https://127.0.0.1:3000/socket.io/?EIO=3&transport=polling&t=LTvQYL3" +1ms
engine.io-client:polling-xhr xhr data null +1ms
engine.io-client:socket setting transport polling +2ms
socket.io-client:manager connect attempt will timeout after 8000 +1ms
socket.io-client:manager readyState opening +3ms
engine.io-client:socket socket error {"type":"TransportError","description":0} +74ms
socket.io-client:manager connect_error +1ms
socket.io-client:manager cleanup +0ms

我该如何解决这个错误?谢谢。

最佳答案

对我来说,原因是 Firefox 不信任站点的自签名证书。转到套接字 url,您应该会看到一个对话框,用于将不受信任的站点添加到异常(exception)。

关于javascript - 无法在 FireFox 中建立与 socket.io 的连接(xhr 轮询错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39797097/

相关文章:

firefox - Firefox 扩展和插件有什么区别?

javascript - 在 Threejs 中画一条线3

Javascript 计算器,计算 4 个数值,并将税金乘以总和

javascript - Moment.JS 显示指定时区的格式化时间

javascript - 嵌套列表 css 问题

javascript - 在 Docker 容器中调试 nodejs 应用程序

JavaScript 操作系统检测 - 多个 Windows XP 版本?

css - Firefox 中滚动条缩略图的 Z 索引

node.js - 我如何使用mongoose、nodejs从Mongodb获取数据

javascript - NodeJS+Mongoose - 需要帮助使用 Promises 重构代码