Node.js Socket.io EADDRNOTAVAIL错误
我在防火墙上打开了120端口,在服务器上打开了ufw端口(Ubuntu 16.04) 但当运行此代码时Node.js Socket.io EADDRNOTAVAIL错误,node.js,sockets,websocket,socket.io,Node.js,Sockets,Websocket,Socket.io,我在防火墙上打开了120端口,在服务器上打开了ufw端口(Ubuntu 16.04) 但当运行此代码时 var app = require('express')(); var http = require( "http" ).createServer( app ); var io = require( "socket.io" )( http ); http.listen(120, "xxxx.xxx.xx"); io.on('connection',function(socket){
var app = require('express')();
var http = require( "http" ).createServer( app );
var io = require( "socket.io" )( http );
http.listen(120, "xxxx.xxx.xx");
io.on('connection',function(socket){
console.log("A user is connected");
});
我得到这个错误
throw er; // Unhandled 'error' event
^
Error: listen EADDRNOTAVAIL xxxx.xxxxxx:120
at Object.exports._errnoException (util.js:870:11)
at exports._exceptionWithHostPort (util.js:893:20)
at Server._listen2 (net.js:1224:19)
at listen (net.js:1273:10)
at net.js:1382:9
at nextTickCallbackWith3Args (node.js:452:9)
at process._tickCallback (node.js:358:17)
at Function.Module.runMain (module.js:444:11)
at startup (node.js:136:18)
at node.js:966:3
可能是端口120已被其他设备使用 您可以使用netstat查看该端口上正在侦听的内容:
sudo netstat -plnt | grep ':120'
另一件需要提及的事情是,低端口有时会被保留或阻塞-您可能只想尝试一个更高的端口,“1337”对NodeJS总是很好:-)我收到一些错误,先生。我尝试了3000个端口。但我也遇到了一些错误:(这个代码块在Digital Ocen上工作,但在Microsoft azure上不工作。)还有一件事,当我编写sudo netstat-plnt | grep:120时,我什么也没得到