如何将Angular 2集成到现有的J2EE Spring项目并在同一个PORT上运行它?

时间:2016-12-27 21:49:40

标签: spring angular npm

我的项目在后端有一个Spring,在前端有 AngularJS 1 。当我运行Spring服务器时 - 只为我打开一个端口:8080,我可以通过它访问REST API和 AngularJS 前端内容。

enter image description here

但现在我想转到新的 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

1 个答案:

答案 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。