关于javascript:NodeJS在创建新服务器之前关闭以前的服务器端口

NodeJS close previous server port before creating new server

在这里,我正在做一些开发和测试,所以每次我更改某些内容时,我都要退出服务器,进行更改并启动新的服务器。

第一次,当我运行命令node server.js文件时,它的工作方式就像一个符咒,但当我退出它并进行一些更改并重新启动时,它在控制台中给出了这个错误:

1
 throw er; // Unhandled 'error' event

我搜索了一些关于它的信息,发现当那个端口已经被使用时,这个错误就会出现,当我更改了端口名,然后启动它时,它就会正常工作。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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启动应用程序。