我正在学习从其网站Socket.IO使用socket.io。一切都很顺利,但在我添加第3行var io=require('socket.io')(http);
后,我在尝试运行服务器时遇到错误:
C:\Users\user\chat-example\index.js:3
var io = require('socket.io')(http);
^
TypeError: object is not a function
at Object.<anonymous> (C:\Users\user\chat-example\index.js:3:30)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:929:3
中的代码
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.get('/', function(req, res){
res.sendfile('index.html');
});
io.on('connection', function(socket){
console.log('a user connected');
});
http.listen(3000, function(){
console.log('listening on *:3000');
});
怎么了?这是我第一次学习nodejs和socket.io。如果您能帮助我理解并解决问题,我将非常感激。谢谢。
答案 0 :(得分:0)
如果您安装了socket.io
的过时版本,则会出现该错误。您需要升级到至少1.0.0
才能与文档兼容。最新版本为1.2.1
。
- Jonathan Lonowski