簡體   English   中英

Angular Cli代理在一個環境中工作,但在另一個環境中返回ECONNRESET

[英]Angular Cli proxy working in one env but return ECONNRESET in another

第一次在這里提出問題,因此,如果我缺少任何最佳做法,請告訴我。

我正在使用代理簡化Angular 4應用程序的前端和后端之間的通信的應用程序。

代理設置如下:

 {
  "/api": {
    "target": "http://localhost:9000",
    "secure": false
  },
  "/auth": {
    "target": "http://localhost:9000",
    "secure": false
  }
}

在我的主計算機中,當我運行應用程序中稱為代理的部分時,出現以下錯誤。

[HPM] Error occurred while trying to proxy request /auth/google from localhost:4200 to http://localhost:9000 (ECONNRESET) (https://nodejs.org/api/errors.html#errors_common_system_errors)

chrome控制台顯示504錯誤。

我用來運行所有服務器的命令

concurrently \"mongod\" \"ng serve -pc proxy.conf.json --open\" \"tsc -w -p server\" \"nodemon dist/server/app.js\"

在構建應用程序時,我可以看到該程序已經設置了代理,但是仍然發生相同的錯誤。

[1] [HPM] Proxy created: /api/**  ->  http://localhost:9000
[1] [HPM] Subscribed to http-proxy events:  [ 'error', 'close' ]
[1] [HPM] Proxy created: /auth/**  ->  http://localhost:9000
[1] [HPM] Subscribed to http-proxy events:  [ 'error', 'close' ]

但是,當我嘗試在我擁有的另一台計算機上運行(完全相同的代碼,節點設置,網絡環境等)時,代理正在工作。

我試圖通過使兩台計算機之間的所有與應用程序相關的設置相同(節點版本,npm版本,全新安裝所有節點程序包,甚至從兩台計算機上的github上清除應用程序)來復制該錯誤,但是該錯誤仍然持續存在,但不是另一個。

有人可以對我應該去哪里或下一步應該做什么提出建議,以找出此問題的根本原因嗎? 謝謝!

我到目前為止所做的事情:

  • 重新安裝所有npm軟件包
  • 重新啟動電腦
  • 從git再次拉出應用程序
  • 獨立運行所有命令(用於數據庫,服務器和客戶端)

nodejs版本:6.10.3

npm版本:5.6.0

根據朋友的建議,我最終跑了

sudo lsof -i :9000

查看9000中是否有任何可能干擾端口的信息。 結點服務器運行時,在同一端口中運行的php偵聽器最終很少-這些php偵聽器是錯誤的元凶。

因此,我運行了以下命令來殺死偵聽器和問題,因為它已解決。

kill -kill `lsof -t -i tcp:9000`

不知道為什么節點沒有噴出“使用中的端口”錯誤,但是現在好了,它已經解決了。

故事的依據:檢查您的端口以確保其未被占用。

暫無
暫無

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

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