Express 3.x + Socket.IO 版本升级后的改动(无法加载/socket.io/socket.io.js)
服务端:express3.0的开启服务的写法
// Express web server
var app = express();
// ...
// Server Listen
http.createServer(app).listen(app.get('port'), function(){
//log
});
//socket io listen
var io = require('socket.io').listen(app);
客户端引入socket.io.js
如果按以前的直接这样引用:<script src="/socket.io/socket.io.js"></script>会报错,找不到此文件
解决方法是在 Express 的 .listen() 后,取得 server 实例,再传给 Socket.IO 使用。
var server = http.createServer(app).listen(app.get('port'), function(){
//log
});
var io = require('socket.io').listen(server);
//log
});
var io = require('socket.io').listen(server);
客户端即可正常加载到/socket.io/socket.io.js