在创建新服务器之前,NodeJS关闭以前的服务器端口
在这里,我正在做一些开发和测试,所以每次我改变一些东西以退出服务器并进行更改并启动新的服务器。
我第一次运行命令node server.js
文件时,它的作用就像一个魅力,但当我退出它并做一些更改并重新启动时,它在控制台中给我提供了这个错误:
throw er; // Unhandled 'error' event
我搜索了一下,发现这个错误发生在这个端口已经被使用的时候,当我改变了端口名称,然后启动它就可以正常工作。
var express = require("express");
var app = express();
var port = 3702;
app.get("/", function(req, res){
console.log(req);
res.send("It works!");
});
app.on('error', function(err) {
console.log(err);
});
app.listen(port);
console.log("Listening on port " + port);
更改您对服务器所做的每个更改并启动新流程的端口号不是好习惯。 从你说的这个问题看来,你似乎希望这样做是为了开发目的,以随时测试更改。 有像nodemon这样的工具可以帮助你做到这一点。 他们会观看项目中的文件,任何更改都会触发同一端口中的服务器重新启动。
使用nodemon
与通过npm安装它一样简单: npm install -g nodemon
,然后使用nodemon
而不是node
启动应用程序。
上一篇: NodeJS close previous server port before creating new server
下一篇: execute node.js without using command prompt(either winform or javascript)?