Angular2 http默认头文件通用授权令牌

Ben*_*ren 3 authorization header http token angular

在角度1中,我能够操纵http对象,因此帖子的请求标头包含如下身份验证:

$http.defaults.headers.common['Authorization'] = "Token " + sessionobject.token;

return $http({

    method: 'POST',
    url: SERVER_ENVIRONMENT + 'updatepath',
    headers: {
        'Content-Type': 'application/json',
        'Data-Type': 'json'
    },
    data: { 
        id : id,
        ...
    }
})
Run Code Online (Sandbox Code Playgroud)

你能帮我找到Angular 2中产生相同帖子请求的等价物吗?很多thnx提前

Cha*_*ani 5

您扩展Angular2类BaseRequestOptions以为所有Http调用提供自定义标头

class MyOptions extends BaseRequestOptions {
 header:Headers=new Header({
'Authorization': 'Bearer ' + localStorage.getItem('token')
 });
}
Run Code Online (Sandbox Code Playgroud)

然后可以将此类覆盖插入DI,以便请求选项http选择 MyOptions

bootstrap(App, [HTTP_PROVIDERS, provide(RequestOptions, {useClass: MyOptions})]);
Run Code Online (Sandbox Code Playgroud)

这种方法的问题是令牌应该在引导期间可用,而大多数情况下并非如此.

另一种选择是创建自定义http服务.其中一个这样的实现可以在这里获得https://gist.github.com/chandermani/9166abe6e6608a31f471