【发布时间】:2020-10-09 01:28:45
【问题描述】:
在 Angular 9 上,我创建了以下拦截器:
@Injectable()
export class AuthorizationHeaderInterceptor implements HttpInterceptor {
constructor(private authenticationService: AuthenticationService) { }
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return from(this.authenticationService.getAuthenticationHeader()).pipe(header => {
request = request.clone({
setHeaders: {
Authorization: `${header}`
}
});
return next.handle(request);
});
}
}
authenticationService.getAuthenticationHeader() 方法返回一个Promise<string>,其中字符串是我需要添加到请求中的标头值。
所以我在Observable 上使用from 将Promise 转换为Observable 和pipe。
我需要在pipe之后使用map吗?
这是实现它的正确方法吗?
【问题讨论】:
标签: angular typescript promise rxjs observable