【发布时间】:2016-10-13 19:46:52
【问题描述】:
这是我在 NodeJs 和 i' 上的第一个程序,尝试在上面使用 Express 和 Socket.io。创建如下代码的简单项目后,我得到了
throw er; // Unhandled 'error' event
错误,我在谷歌上搜索更多教程,但我找不到我的代码问题
安装包:
{
"name": "signalAndroidServerApplication",
"version": "0.0.0",
"private": true,
"dependencies": {
"body-parser": "~1.12.4",
"cookie-parser": "~1.3.5",
"express": "~4.12.4",
"socket.io": "latest"
}
}
我的节点:
var socket = require('socket.io');
var express = require('express');
var app = express();
var server = require('http').createServer(app);
var io = socket.listen(server);
var port = process.env.PORT || 3000;
server.listen(port, function () {
console.log('Server listening at port %d', port);
});
io.on('connection', function (socket) {
socket.on('new_count_message', function (data) {
console.log('new_count_message' + data);
io.sockets.emit('new_count_message', {
new_count_message: data.new_count_message
});
});
});
完全错误:
events.js:72
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE
at errnoException (net.js:901:11)
at Server._listen2 (net.js:1039:14)
at listen (net.js:1061:10)
at Server.listen (net.js:1135:5)
at Object.<anonymous> (/var/www/signal/nodeJs/server.js:8:8)
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)
【问题讨论】:
-
真正的错误是
EADDRINUSE——地址已被使用。 -
EADDRINUSE表示该端口已被使用。 -
为避免此错误,请务必使用 ctrl-c 而不是 ctrl-z 来关闭服务器。 superuser.com/questions/262942/…
标签: javascript node.js