Node.JS错误试图创建聊天
问题描述:
我目前正在编写一个将在Heroku上运行的聊天应用程序。我正在使用Node.JS和Socket.IO来执行此任务。它完美的作品时,我本地运行,但是当我把它部署到Heroku的我得到这个错误:Node.JS错误试图创建聊天
app[web.1]: /app/node_modules/socket.io/lib/manager.js:724
app[web.1]: rand.writeInt32BE(this.sequenceNumber, 11);
app[web.1]: ^
app[web.1]: TypeError: Object
下面的代码的Socket.IO部分(剩下的只是经典快递码):
var socket = require('socket.io');
var io = socket.listen(app);
io.configure(function() {
io.set("transports", ["xhr-polling"]);
io.set("polling duration", 10);
});
var usernames = {}
io.sockets.on('connection', function (socket) {
socket.on('adduser', function(username) {
socket.username = username;
usernames[username] = username;
socket.join('room');
socket.emit('action', username, 'connected');
socket.broadcast.to('room').emit('action', username, 'connected');
});
socket.on('message', function(message) {
socket.emit('message', socket.username, message);
socket.broadcast.to('room').emit('message', socket.username, message);
});
});
有没有人有任何想法如何解决这个错误?
答
确保您使用的节点和NPM在的package.json指定的正确版本
"engines": {
"node": "0.8.x"
,"npm": "1.1.x"
}
太谢谢你了!我甚至不知道你可以指定节点和npm的版本来使用... – Cydonia7 2012-07-29 08:33:15