node.js表达4.11.2& socket.io得到错误?EIO = 3& transport = polling& t =

时间:2015-02-12 21:24:35

标签: node.js express socket.io

这是我的设置 这适用于Express版本4.8.0和socket.io 1.0.6 并且还表达4.8.0和套接字版本1.3.3

所以我假设他们在快递中改变了一些东西。

当前版本的快递是4.11.2 socket.io的当前版本是1.3.3

现在我在客户端收到错误。

GET http://localhost/socket.io/?EIO=3&transport=polling&t=1423775884240-0  net::ERR_CONNECTION_REFUSED

我正在使用socket.io命名空间

var express = require('express'),
website = express(),
http = require('http').Server(website),
io = require('socket.io')(http),
routes = require('./routes'),
path = require('path'),
logger = require('express-logger'),
json = require('express-json'),
bodyParser = require('body-parser'),
methodOverride = require('express-method-override');


website.set('port', process.env.PORT || 3000);
website.set('views', path.join(__dirname, 'views'));
website.set('view engine', 'ejs');
website.set('socket', io);
website.set('socketId', '1234');
website.use(logger({path: './logs/logfile.txt'}));
website.use(json());
website.use(bodyParser.urlencoded({ extended: false }));
website.use(methodOverride());
website.use(express.static(path.join(__dirname, 'public')));


// Setup routing
require('./routing')(website);

http.listen(website.get('port'), function(){
console.log('Website ready, listening on port: ' + website.get('port'));
});

module.exports = website;

这是在我的连接索引页面

var socketId = website.get('socketId');
var io = website.get('socket').of('/' + socketId);
谁能告诉我哪里出错了? 干杯

1 个答案:

答案 0 :(得分:0)

它是socket.io的一个错误,使用命名空间将忽略端口,或默认为端口80。

更多信息:

https://github.com/Automattic/socket.io-client/pull/803