Spring Security和Angular 5
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Security和Angular 5相关的知识,希望对你有一定的参考价值。
现在,我成功登录访问spring rest api后,通过我的angular 5应用程序的标题发送用户名和密码。成功之后我从spring获得了唯一的sessionId作为响应,我可以使用该ID而不是凭据进行身份验证
角度代码
let d=localStorage.getItem('currentUser');
let headers = new Headers();
var user=JSON.parse(d);
headers.append('Accept', 'application/json');
// creating base64 encoded String from user name and password
var base64Credential: string = btoa(user.principal.username+ ':' + user.principal.password);
headers.append("Authorization", "Basic " + base64Credential);
let options = new RequestOptions({ headers: headers
});
var self = this;
self.greeting = {id:'', content:''};
http.get(this.url,options).map(response => self.greeting = response.json);
答案
您可以使用jwt令牌。
- 将sessionId存储在localStorage或cookie中。
- 在每个请求中使用请求标头发送它(使用httpInteceptor)https://medium.com/@ryanchenkie_40935/angular-authentication-using-the-http-client-and-http-interceptors-2f9d1540eb8
- 在Java应用程序中,将过滤器添加到需要保护的所有请求中。
以上是关于Spring Security和Angular 5的主要内容,如果未能解决你的问题,请参考以下文章
使用 Spring Boot 2 和 Spring Security 5 进行多因素身份验证
Angular集成Spring Boot,Spring Security,JWT和CORS
带有 Spring Boot 和 Spring Security 的 Angular2
SpringBoot入门系列:Spring Security 和 Angular JS