【发布时间】:2017-07-21 04:33:16
【问题描述】:
因此,仅出于生产测试的目的,我不得不拆分使用 angular 1.x 编写的前端客户端和我的节点后端服务器代码。客户端使用节点提供的 api 功能,但它们在我本地机器上的不同服务器上运行。我将节点服务器设置为在端口 5000 上运行,当它运行时,我的角度服务器向我提供了它必须移动到端口 5001 的信息,因为端口 5000 已经被占用。
如何启动两个服务器并强制它们在我的本地计算机上共享 API 功能?
对于我使用“服务”的角度 -> https://github.com/angular/angular-cli/wiki/serve
【问题讨论】:
-
您想在同一个端口上运行客户端服务器(角度)和节点服务器(nodejs)吗?您不能在同一端口上运行两台服务器:/
-
所以从技术上讲,不可能在不同的服务器上分别运行客户端和服务器端代码,而是在使用 API 函数方面相互连接?
-
什么限制让你在同一个端口上运行两个服务器?如果两者都在同一个端口上运行,但在不同的上下文中,例如 UI 在
localhost:5000/ui上运行,而 API 在localhost:5000/api上运行,这对你有用吗? -
你不能让两个应用程序在同一个 ip 的同一个端口上监听。但你肯定可以连接它们。这就是大多数大型项目所做的。在组合设置中,您不会直接通过其端口访问各个应用程序,而是使用反向代理,例如 nginx,例如将以
/api开头的所有内容转发到您的节点应用程序,并将其他所有内容转发到您的角度应用程序。 -
我想你误解了我的评论,先告诉我你有什么,你想要什么?你有两个服务,你想在同一个端口上运行?您可以在具有不同端口的同一台机器上运行两个服务。
标签: javascript angularjs node.js deployment