我有一些代码对于最近5个左右的角度版本来说对我来说都是完美的。
一旦升级到Angular 10,就不再在标头上设置不记名令牌。在升级说明中,我没有看到有关对HTTP客户端进行修改或其工作方式的任何内容。
现在任何人都必须处理我的代码吗?
private async handleAccess(request: HttpRequest<any>, next: HttpHandler): Promise<HttpEvent<any>> {
await this.angularFireAuth.user.subscribe((user) => {
user.getIdToken().then(
(token) =>
(request = request.clone({
setHeaders: {
Authorization: 'Bearer ' + token,
},
}))
);
});
return next.handle(request).toPromise();
}
答案 0 :(得分:0)
我一直努力让事情重新开始。流程一定有问题,利用管道+ mergeMap我得到了预期的行为
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return this.angularFireAuth.idToken.pipe(
mergeMap((token) => {
return next.handle(
request.clone({
setHeaders: {
Authorization: 'Bearer ' + token,
},
})
);
})
);
}