我的项目在后端有一个Spring,在前端有 AngularJS 1 。当我运行Spring服务器时 - 只为我打开一个端口:8080,我可以通过它访问REST API和 AngularJS 前端内容。
但现在我想转到新的 Angular 2 。 如何使用相同的端口:8080用于API和 Angular 2 ? 我之所以提出这个问题,是因为我发现几乎每个教程都提供使用Angular CLI(npm install -g angular-cli)https://cli.angular.io/的东西,用它安装另一个精简服务器然后我必须运行它在另一个港口。
如何为 Angular 2 安装最低要求的依赖项,而没有自己的服务器?
像这样的教程: https://www.youtube.com/watch?v=HhroyiYFmjc REST API在端口上运行:8080 Angular2 on port:3000
答案 0 :(得分:3)
要在Java服务器下部署由Angular CLI生成的应用程序,您可以运行ng build(或ng build --prod)并将dist dir中生成的文件内容复制到服务器上的静态目录。 / p>
在开发模式下,如果要继续使用dev服务器运行应用程序(默认情况下它在端口4200上运行),您可以通过在Angular项目中创建文件proxy-config.json来配置代理。以下内容(假设api是部署的URL的一部分):
{
"/api": {
"target": "http://localhost:8080",
"secure": false
}
}
现在,您可以使用以下命令以开发模式运行应用程序:
ng serve --proxy-config proxy.conf.json
这将允许您的开发服务器(端口4200)访问端口8080上的REST API。