0

我正在使用Tymon JWT从我的Laravel应用程序中设置 JWT 令牌。

我的设置类似于快速入门指南,当我使用 进行测试时postman,后端成功返回访问令牌。

登录令牌作为后端的响应

在前端,我使用Angular2-jwt从前端发送请求,并将Http模块替换为AuthHttp来自此包的模块,该包是 Http 模块的包装器。

配置 AuthModule 类似于指南:

import { NgModule } from '@angular/core';
import { Http, RequestOptions } from '@angular/http';
import { AuthHttp, AuthConfig } from 'angular2-jwt';

export function authHttpServiceFactory(http: Http, options: RequestOptions) {
  return new AuthHttp(new AuthConfig({
        tokenName: 'token',
        noJwtError    : true, //<== Using this explicitely because i am using AuthHttp on every routes.
        tokenGetter: (() => sessionStorage.getItem('token')),
        globalHeaders: [{'Content-Type':'application/json'}],
    }), http, options);
}

@NgModule({
  providers: [
    {
      provide: AuthHttp,
      useFactory: authHttpServiceFactory,
      deps: [Http, RequestOptions]
    }
  ]
})
export class AuthModule {}

在登录页面的第一次加载期间,如果我有有效的身份验证令牌,则请求中没有Authorization: Bearer <token>添加任何内容。Get有时它会被添加到标头中,并且在某些请求中标Authorization头中没有。

图片1:

即使有有效的令牌,也没有在标头中添加授权

标题没有授权

图片2:

授权标头在向后端请求令牌之前添加。

在 Header 上添加了授权

我不确定何时添加标题以及何时从标题中删除。

有没有其他人收到过这种问题?

如果需要更多详细信息,将添加它们。

4

0 回答 0