簡體   English   中英

NODE - 其他東西已經在端口上運行

[英]NODE - Something else is already running on port

我有一個帶有后端節點的應用程序,並為前端做出反應。 我有一個 npm 開發腳本在我的服務器package.json上同時運行,如下所示:

"server": "nodemon server.js",
"client": "npm start --prefix client",
"watch:sass": "npm run watch:sass --prefix client",
"dev": "concurrently \"npm run server\" \"npm run client\" \"npm run watch:sass\""

在我准備部署並在我的客戶端文件夾package.json下運行我的react-scripts build之前,這一直運行良好。

我的服務器在端口 3000 上偵聽,並且我使用這樣的代理設置了我的 react-sript: "proxy": "http://localhost:8000"

每當我嘗試運行npm run dev時,在我的 react build 之后,我都會收到以下錯誤: Something is already running on port 3000

是的,我嘗試使用sudo lsof -i:3000列出並查看在該端口上運行的所有進程,是的,我嘗試killall node進程。

我試圖更改app.listen()上的端口或更改react-scripts start TO PORT=3001 react-scripts start是的,這將解決我最初的問題,但問題是我似乎無法得到我的前端與后端通信,我所有的 API 調用都不起作用。

Proxy error: Could not proxy request /api/users/login from localhost:3000 to http://localhost:8000.
See https://nodejs.org/api/errors.html#errors_common_system_errors for more information (ECONNREFUSED).

有任何想法嗎? 謝謝。

應該有另一個節點進程仍在使用該端口,請嘗試在您的終端中執行pkill node然后再次啟動您的服務器

我很抱歉我很傻。 我將代理設置為端口 8000,但將 app.listen() 上的端口保持為 3000,而本應為 8000!

是一個方便的工具,可以殺死在節點端口上運行的東西:

npm install --global kill-port

然后

kill-port --port 8080

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM