【发布时间】:2017-12-04 16:08:24
【问题描述】:
第一次在这里提问,如果我遗漏了任何最佳做法,请告诉我。
我正在开发一个 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
【问题讨论】: