gpt4 book ai didi

angular - 如何为 Angular HttpClient 设置 baseUrl?

转载 作者:太空狗 更新时间:2023-10-29 16:46:55 36 4
gpt4 key购买 nike

我在documentation中没有找到方法为 HTTP 请求设置基本 API URL。是否可以使用 Angular HttpClient 执行此操作?

最佳答案

使用新的 HttpClient 拦截器。

创建一个实现 HttpInterceptor 的合适的注入(inject):

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

@Injectable()
export class APIInterceptor implements HttpInterceptor {
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {

const apiReq = req.clone({ url: `your-api-url/${req.url}` });
return next.handle(apiReq);
}
}

HttpInterceptor 可以克隆请求并根据需要更改它,在这种情况下,我为所有 http 请求定义了一个默认路径。

为 HttpClientModule 提供以下配置:

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

现在您所有的请求都将以 your-api-url/ 开头

关于angular - 如何为 Angular HttpClient 设置 baseUrl?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45735655/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com