如何在同一个域/服务器上部署AngularJS app和Spring Restful API服务?

 发的好地方 发布于 2023-01-12 18:06

我是Spring和AngularJS的新手.我按照这里的步骤构建后端restful API,并根据请求发送Json.因此,根据指南,当我运行"mvn spring-boot:run"时,tomcat服务器从localhost:8080开始.

然后我使用Yeoman角度生成器来构建我的角度应用程序.当我在我的角度应用程序中运行"grunt serve"时,前端应用程序运行在localhost:9000.

我应该怎么做才能使我的角度应用程序可以与我在同一域上的Springboot tomcat服务器一起提供,比如localhost:8080?

我可以遵循一个示例项目吗?我找到了以下项目,但仍然无法使其工作,因为我没有太多关于tomcat的背景知识.

    https://github.com/robharrop/spring-angularjs

    https://github.com/GermanoGiudici/angularjs-maven-tomcat-seed

    https://github.com/xvitcoder/spring-mvc-angularjs

pherris.. 18

你需要采取以下两种方式:

构建的文件(grunt build然后基本上是dist /目录中的所有内容)

原始文件(您的index.html和所有JS原样)

并将它们复制到以下文件夹之一(我推荐/ public /):http://spring.io/blog/2013/12/19/serving-static-web-content-with-spring-boot

Spring Boot将自动添加位于以下任何目录中的静态Web资源:

/ META-INF /资源/

/资源/

/静态的/

/上市/

这意味着Spring Boot不仅提供了构建Java或Groovy应用程序的简单方法,还可以使用它轻松部署客户端JavaScript代码并在真实的Web服务器环境中对其进行测试!

这对于开发来说将是一种痛苦,因为每次对前端进行更改时都必须重新复制文件.对于生产,您的目标应该是使用spring应用程序部署构建文件的版本化副本.

对于开发,您可能需要考虑让grunt提供Angular内容并运行Tomcat和您的grunt服务器(是节点吗?)并在前端和后端之间启用跨源请求.或者你可以将整个angular目录复制到上面的目录之一,但这是一个短期的方法.

1 个回答
  • 你需要采取以下两种方式:

    构建的文件(grunt build然后基本上是dist /目录中的所有内容)

    原始文件(您的index.html和所有JS原样)

    并将它们复制到以下文件夹之一(我推荐/ public /):http://spring.io/blog/2013/12/19/serving-static-web-content-with-spring-boot

    Spring Boot将自动添加位于以下任何目录中的静态Web资源:

    / META-INF /资源/

    /资源/

    /静态的/

    /上市/

    这意味着Spring Boot不仅提供了构建Java或Groovy应用程序的简单方法,还可以使用它轻松部署客户端JavaScript代码并在真实的Web服务器环境中对其进行测试!

    这对于开发来说将是一种痛苦,因为每次对前端进行更改时都必须重新复制文件.对于生产,您的目标应该是使用spring应用程序部署构建文件的版本化副本.

    对于开发,您可能需要考虑让grunt提供Angular内容并运行Tomcat和您的grunt服务器(是节点吗?)并在前端和后端之间启用跨源请求.或者你可以将整个angular目录复制到上面的目录之一,但这是一个短期的方法.

    2023-01-12 18:08 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有