如何在开发过程中运行多个Node.js应用程序
答
地址已在使用中,你应该端口例如从3000变为3001脚本的第二个实例。
+0
我改变了港口及其工作,非常感谢... – 2014-08-27 12:57:39
答
由于3000已被使用,您需要使用不同的端口。
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(3001, "127.0.0.1");
答
您不能在同一个端口上绑定两个套接字。因此错误。
通常的良好做法是依赖于PORT
环境变量,以便能够从命令行快速更改侦听端口。
var http = require('http');
var port = process.env.PORT || 3000;
http.createServer().listen(port);
然后启动你的应用程序:
$ PORT=8080 node app.js
关于如何在命令行中定义的环境变量跨平台的说明,请参阅here。
这两个应用程序都试图在端口3000上运行? – Tom 2014-08-27 12:53:30
解释实际的错误:EADDRINUSE的意思是'**错误,地址正在使用**'。有关所有这些错误的含义,请参阅http://www.gnu.org/software/libc/manual/html_node/Error-Codes.html。 – mikemaccana 2014-08-27 12:59:17