【发布时间】:2020-07-24 21:41:23
【问题描述】:
我有一个 Angular 8 应用程序,它有一个 HTTP 拦截器。在我的应用程序中,我在应用程序的 UI 中使用了第 3 方 UI 小部件(我从 npm 注册表作为依赖项获取)。该小部件嵌入到我的应用程序 UI 中时,会使用 axios 模块进行 GET 调用。现在,我注意到小部件发出的 HTTP GET 调用没有被我拥有的 HTTP 拦截器拦截。来自我的应用程序的其他 HTTP 请求被拦截,确认我的拦截器正常工作。您能否帮助我了解如何拦截小部件正在进行的 GET 调用?
下面是我的拦截器:
import { Injectable } from "@angular/core";
import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from "@angular/common/http";
import { Observable } from "rxjs";
import { LoaderService } from './loader.service';
import { finalize } from "rxjs/operators";
@Injectable()
export class LoaderInterceptor implements HttpInterceptor {
constructor(private loaderService: LoaderService) {
}
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
if (displayLoadingScreen) {
return next.handle(request).pipe(
finalize(() => {
this.activeRequests--;
})
)
} else {
return next.handle(request);
}
};
}
【问题讨论】:
标签: javascript angular axios angular-http-interceptors