我有一个使用 connect 在 Node.js 中运行的简单服务器:
var server = require('connect').createServer();
//actions...
server.listen(3000);
在我的代码中,我有实际的处理程序,但这就是基本思想。我一直遇到的问题是
EADDRINUSE, Address already in use
在之前崩溃或出错后再次运行应用程序时,我收到此错误。由于我没有打开终端的新实例,因此我使用 ctr + z
关闭该进程。
我相当确定我所要做的就是关闭服务器或连接。我尝试在 process.on('exit', ...);
中调用 server.close()
,但没有成功。
最佳答案
首先,您想知道哪个进程正在使用 port 3000
sudo lsof -i :3000
这将列出在此端口上监听的所有PID,一旦您拥有PID,您就可以使用以下命令终止它:
kill -9 <PID>
在哪里替换 <PID>
通过进程 ID 或进程 ID 列表、上一个命令输出。
关于node.js - Node/Express : EADDRINUSE, 地址已在使用 - 终止服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42190813/