用于AutoScript的TypeScript客户端的HttpInterceptor

时间:2019-06-03 08:51:59

标签: angular typescript autorest

我对TypeScript和Angular很陌生。我有http拦截器:

export class HttpTokenInterceptor implements HttpInterceptor {
  constructor() { }

  intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    const headersConfig = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    };

    headersConfig['TEST'] = `TEST`;

    const request = req.clone({ setHeaders: headersConfig });
    return next.handle(request);
  }
}

当我通过HttpClient从'@ angular / common / http'let resp = await this.http.get('http://localhost').toPromise();发送GET请求时,可以在标头中看到我的TEST标头项。

我还使用autorest为我的休息服务(@ microsoft.azure / autorest-core:2.0.4302)生成TypeScript客户端,并且当我调用生成客户端自定义TEST标头的任何方法时,都不会添加到查询中。 /> 我以为AutoRest也会通过应该由HttpInterceptor处理的同一HttpClient生成HTTP查询。
也许我在做这件事是完全错误的,它应该以这种方式工作吗?还是有办法拦截AutoRest生成的代码发出的HTTP请求?

0 个答案:

没有答案