【发布时间】:2018-08-30 18:58:19
【问题描述】:
我必须通过 Interceptor 对请求返回的主体应用解密,但是解密的方法是异步的并返回一个 Promise。
这是课程的摘录:
intercept(req: HttpRequest, next: HttpHandler): Observable> {
return next.handle(req).pipe(map((event: HttpEvent<any>) => {
if (event instanceof HttpResponse) {
let _body;
this.cryptMethod.decrypt(event.body).this(res => _body = res); // Método assíncrono
return event.clone({ body: JSON.parse(_body) });
}
return event;
}));
}`
原来“this.cryptMethod.decrypt()”是异步的,所以在_body被填充之前就到了return。
有什么解决办法吗?
【问题讨论】:
标签: angular http interceptor