Angular 2,Spring boot,spring security,登录表单

我有一个在http:// localhost:4200上运行的前端应用程序,角度为2(我使用了angular-cli来生成项目).
应用程序运行没有任何问题(我可以使用Angular 2 Http服务从/向数据库获取和发布信息:

getList () {
    return this._http.get("http:// localhost:8080/").map(res => res.json());
}

另一方面,我有一个在http:// localhost:8080 /(注意端口)上使用spring boot运行的后端应用程序,它为我的angular 2应用程序提供REST Api.

从http:// localhost:4200 /发送到http:// localhost:8080 /的请求按预期工作.

在我使用spring framework&amp ;;编写应用程序之前angularJS 1,spring security在同一个app(maven项目)中负责登录和安全.

现在我有两个独立的应用程序通过http进行通信(RESTful Api与弹簧启动,前端Api与角度2)

如何设置我的登录表单以及放置它的位置,以及如何使用angular 2应用程序配置弹簧安全性?

最佳答案
当您使用Angular CLI启动Angular应用程序时,Angular页面由后端的NodeJ提供服务.
你有几个选择.

>登录可以在NodeJS服务器上处理,然后可以调用
Spring Boot应用程序进行身份验证和授权.(我想,你可能需要做一些调整,比如使用快速服务器而不是精简服务器.看看这里https://stackoverflow.com/a/37561973/6785908)
>初始开发后,您可以复制AngularJS
Spring MVC(Spring Boot)服务器的资源并使用它来提供服务
您的页面(以及其他API),就像您正在做的那样
之前.
>让Angular App调用spring boot Service(我想,你
正在使用$http.post提交表单,如果是这样的话
可以只更改URL,以便它可以命中弹簧启动应用程序.)
对于生产部署,使用nginx / httpd来提供静态
文件(AngularJS / CSS等)和路由/代理所有的动态请求
春季启动应用程序.

我强烈建议第3种选择.

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...