Spring Boot + Angular应用程序正常工作

时间:2019-03-27 06:52:22

标签: angular spring-boot

我是Angular 7的新手。我想构建Spring Boot + Angular 7应用程序,但是我对Spring Boot + Angular 7如何协同工作感到困惑。为了解释我的问题,我创建了一个示例项目,在其中定义了休息控制器和角度应用程序,在其中创建了模块并定义了路线。现在,当我从IDE内部运行Spring Boot Application时,我将无法理解该应用程序的行为。出现的一些问题是:

1)当我启动应用程序并在浏览器中点击http://localhost:8080时,调用将转到Spring Boot Application服务器或angular服务器。

2)当我在浏览器中手动编写在angular中配置的路由路径之一时,为什么呼叫不会转到angular服务器。

概述弹簧引导和角度如何结合使用将有助于理解并开始在应用程序中编写代码。

据我目前对Angular 7的了解,默认index.html已加载到我们指定要加载的应用程序组件的位置,进而在我们指定要加载的其他组件的app-component中。如果是路由器配置,我们只需在app.component.html中指定<router-outlet></router-outlet>。但是,当Angle 7与Spring Boot结合使用时,这种理解又如何呢?

2 个答案:

答案 0 :(得分:0)

没有Angular服务器。这是一个JavaScript框架,完全在浏览器中运行。

如果您向Spring Boot服务器发送请求,则Spring Boot服务器将根据单独的Spring Boot规则进行回答。 Angular应用程序只是一堆静态JS,CSS文件和index.html静态文件,这些文件由您的Spring Boot服务器提供。

如果您使用Angular路由器浏览Angular应用程序路线,则所有操作都在浏览器内部进行(即Angular基本上会更改浏览器位置栏中的URL)。但是,如果刷新,您确实会向Spring Boot服务器发送请求,该服务器必须再次提供index.html页面,以重新加载并重新启动Angular单页面应用程序(如the guide中所述)< / p>

答案 1 :(得分:0)

如果您尚未更改任何配置,例如角形护套和弹簧护套的端口。 然后,角靴在http://localhost:4200上运行,弹簧靴在http://localhost:8080上运行。
如果您想从前端到达后端的端点,则需要将请求代理到http://localhost:8080
如何代理您的请求,请检查here
1)当我启动应用程序并在浏览器中点击http://localhost:8080时,调用将转到Spring Boot Application服务器或angular服务器。 -将调用后端或春季启动。