Angular6 angular-jwt没有为请求标头添加令牌

问题描述 投票:1回答:2

我正在使用angular-jwt来拦截我的请求并添加JWT令牌,但这似乎并没有发生。

这是我的角度信息:

Angular CLI: 6.0.8
Node: 9.11.2
OS: linux x64
Angular: 6.0.6
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.6.8
@angular-devkit/build-angular     0.6.8
@angular-devkit/build-optimizer   0.6.8
@angular-devkit/core              0.6.8
@angular-devkit/schematics        0.6.8
@angular/cli                      6.0.8
@ngtools/webpack                  6.0.8
@schematics/angular               0.6.8
@schematics/update                0.6.8
rxjs                              6.2.1
typescript                        2.7.2
webpack                           4.8.3

这是我的app.module.ts

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    HttpClientModule,
    JwtModule.forRoot({
      config: {
        tokenGetter: tokenGetter,
        whitelistedDomains:['127.0.0.1:8000'],
        blacklistedRoutes: ['127.0.0.1:8000/api/v1/accounts/login/', '127.0.0.1:8000/api/v1/signup/'],
        authScheme: 'JWT ',
        throwNoTokenError: true
      }
    }),
    CommonModule,
}

这是我的package.json的一部分:

"@angular/router": "^6.0.3",
"@auth0/angular-jwt": "^2.0.0",

对不起,我忘了提到我在tokenGetter中定义了一个app.module.ts函数:

export function tokenGetter() {
  return localStorage.getItem('token');
}
angular angular6 angular2-jwt
2个回答
0
投票

现在您只需使用Angular的HTTP客户端发出请求即可

export function tokenGetter() {
  return localStorage.getItem('access_token');
}

资料来源:import { HttpClient } from '@angular/common/http'; export class AppComponent { constructor(public http: HttpClient) {} ping() { this.http .get('http://example.com/api/things') .subscribe(data => console.log(data), err => console.log(err)); } }

© www.soinside.com 2019 - 2024. All rights reserved.