首页 > 解决方案 > 在响应标头中检索令牌时出现问题 - Angular 6 - 后端 Spring

问题描述

开发。环境:Angular 6.0.9 - Spring Boot 2.0.7 - Spring 5.0.7

我有一个无聊的问题。我的 Angular 应用程序看不到请求标头中的令牌。我的后端是春天,邮递员我通常会得到令牌。值得注意的是,在(chrome)浏览器中,状态码是200。

令牌生成器:

@Override
protected void successfulAuthentication(HttpServletRequest request, HttpServletResponse response, FilterChain chain,
        Authentication auth) throws IOException, ServletException {

    String login = ((UsuarioSS) auth.getPrincipal()).getUsername();
    String token = jwtUtil.generateToken(login);
    response.addHeader("Access-Control-Expose-Headers", "Authorization");
    response.addHeader("Authorization", "Bearer " + token);

}

服务登录:

export class LoginService {

  constructor(public http: HttpClient) { }

  authenticate(credential: Credential) {
    return this.http.post(`${API_URL}/sge/login`,credential,{observe:'response',responseType:'text'});
  }
}

零件:

 onSubmit(){
this.credential = this.loginForm.value;
this.loginService.authenticate(this.credential).subscribe(
  response => {
    console.log(response)
  },
  error => {console.log(error)}
)

控制台铬: 在此处输入图像描述

控制台邮递员:

在此处输入图像描述

标签: springangularheader

解决方案


解决方案:我没有意识到自定义标头是以 LazyInit 的形式出现的。之后,我可以使用令牌访问我的标题。


推荐阅读