【发布时间】:2019-01-18 06:37:49
【问题描述】:
所以,有时当我重新启动服务器时它会修复它,有时它不会,但我不断收到Error: listen EADDRINUSE :::5000。在我的客户端的package.json 中,我有一个"proxy": "http://localhost:5000" 的代理,我将其更改为端口3000 来测试它,但问题仍然存在。我进入server.js 并尝试仅更改端口,但我将其更改为的任何端口都表示它正在使用中。所以,我假设我如何设置快递肯定是个问题。我只是不知道该改变什么,因为它是间歇性的。
而且很奇怪我的服务器仍在运行,因为我的套接字工作......
编辑 这是我的脚本:
"scripts": {
"client-install": "npm install --prefix client",
"start": "node server.js",
"server": "nodemon server.js",
"client": "npm start --prefix client",
"dev": "concurrently \"npm run server\" \"npm run client\"",
},
server.js sn-p
const express = require("express");
const app = express();
const port = process.env.PORT || 5000;
var server = app.listen(port, () =>
console.log(`Server running on port ${port}`)
);
var io = (module.exports.io = require("socket.io").listen(server));
【问题讨论】:
-
你能运行 netstat 或类似的工具来识别绑定到端口的进程吗?我假设如果它在重新启动后发生,则问题是由外部或在启动时引起的,而不是在您的应用程序的拆卸/退出期间。
-
你使用什么命令来运行服务器?
-
"dev": "concurrently \"npm run server\" \"npm run client\"",然后我只运行 npm run dev