升级Angular 17后出现NG02801错误:HttpClient未配置fetch API(SSR场景)
解决Angular 17中NG02801错误:HttpClient未配置fetch API
问题描述
升级到Angular 17后出现以下错误:
NG02801: Angular检测到
HttpClient未配置为使用fetchAPIs。对于使用服务端渲染(SSR)的应用,强烈建议启用fetch以获得更好的性能和兼容性。要启用fetch,请在应用根节点的provideHttpClient()调用中添加withFetch()。
解决方案
该问题和你用inject导入HttpClient编写服务无关,只需在根注入器配置HttpClient时添加withFetch()即可,具体步骤如下:
- 找到项目根目录下的
app.config.ts(若项目结构不同,可能是main.ts) - 导入所需的配置函数:
import { provideHttpClient, withFetch } from '@angular/common/http';
- 在
providers数组中更新provideHttpClient的调用:
export const appConfig: ApplicationConfig = { providers: [ provideHttpClient(withFetch()), // 其他项目所需的提供者... ] };
配置完成后,Angular的HttpClient会使用浏览器原生的fetch API,同时能更好适配SSR场景,即可消除该错误提示。
内容的提问来源于stack exchange,提问作者Amir Abaris
相关产品推荐
相关产品推荐

