我正在使用Angular 8.2.14和JavaSpringBoot 2.2.4进行项目
问题
我们正在使用CAS协议来设置身份验证。这是描述连接到CAS的过程的图:
在此图片上,我们可以看到第二步:来自API的302重定向请求,该请求重定向到CAS以获取登录页面。第三步是连接页面。但是Web浏览器不会使用CAS服务器的响应刷新页面。
在CAST服务器的响应中,有一个带有登录页面的HTML文档,但未显示在网页上。
代码
Angular:AuthenticationService的登录方法
login() {
this.httpClient.get<UserModel>('/api/login').subscribe(user => {
if (!isNullOrUndefined(user)) {
this.initialiseConnectedUser(user);
this.router.navigateByUrl('/content/start').then();
}
});
}
JavaSpringBoot:AuthenticationController类中的登录功能REST控制器
@PostMapping("/login")
public ResponseEntity<UserDTO> login() {
UserDTO result = userService.getConnectedUser();
if(result == null) {
return ResponseEntity.badRequest().build();
} else {
return ResponseEntity.ok(result);
}
}
其他
当我从Web浏览器访问localhost:8081 / api / login时,我可以从CAS中看到登录页面...一些帮助吗?