我是Spring和AngularJS的新手 . 我按照here步骤构建后端restful API,并根据请求发送Json . 因此,根据指南,当我运行"mvn spring-boot:run"时,tomcat服务器从localhost:8080开始 .
然后我使用Yeoman角度生成器来构建我的角度应用程序 . 当我在我的角度应用程序中运行“grunt serve”时,前端应用程序运行在localhost:9000 .
我应该怎么做才能使我的角度应用程序可以与我在同一域上的Springboot tomcat服务器一起提供,比如localhost:8080?
我可以遵循一个示例项目吗?我找到了以下项目,但仍然无法使其工作,因为我没有太多关于tomcat的背景知识 .
1 回答
你需要采取以下两种方式:
内置文件(
grunt build
然后基本上是dist /目录中的所有内容)原始文件(你的index.html和所有JS as-is)
并将它们复制到以下文件夹之一(我推荐/ public /):http://spring.io/blog/2013/12/19/serving-static-web-content-with-spring-boot
这对于开发来说是一种痛苦,因为每次对前端进行更改时都必须重新复制文件 . 对于 生产环境 ,您的目标应该是使用spring应用程序部署构建文件的版本化副本 .
对于开发,您可能需要考虑让grunt提供Angular内容并运行Tomcat和您的grunt服务器(是节点吗?)并在前端和后端之间启用跨源请求 . 或者你可以将整个angular目录复制到上面的目录之一,但这是一个短期的方法 .