现在,我成功登录访问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);
答案 0 :(得分:0)
您可以使用jwt令牌。
在每个请求中的请求标头内发送它(使用httpInteceptor) https://medium.com/@ryanchenkie_40935/angular-authentication-using-the-http-client-and-http-interceptors-2f9d1540eb8
在Java应用程序中,将过滤器添加到需要保护的所有请求中。