typescript 拦截器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了typescript 拦截器相关的知识,希望对你有一定的参考价值。

import { Injectable } from '@angular/core';
import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/catch';
import 'rxjs/add/observable/throw';

@Injectable()
export class ErrorInterceptor implements HttpInterceptor {

  constructor() { }

  intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    console.log('req ======= ', req.url);
    const authReq = req.clone({ headers: req.headers.set('customHeader', 'customHeaderValue')});

    return next.handle(req).catch((error) => {
      console.log('Error Occurred', error);
      return Observable.throw(error);
    }) as any;

  }
}
    providers: [{
      provide: HTTP_INTERCEPTORS,
      useClass: ErrorInterceptor,
      multi: true,
    }]

以上是关于typescript 拦截器的主要内容,如果未能解决你的问题,请参考以下文章

typescript 角度为4.3+的拦截器

typescript 拦截器response.ts

typescript 将http拦截器添加到模块

Typescript - 修改拦截器以返回 config.data 时如何更改 axios 响应的类型

typescript 用于以单一方式管理所有HTTP错误的错误拦截器

从使用 nestjs API 应用程序调试 npm 库(使用 noidejs、nestjs 和 typescript 构建)