用途:为 NodeJS-Starter-V1 项目沉淀类型安全的 API 客户端模式,覆盖浏览器端、服务端组件与 Python 侧的调用封装。
主要能力:提供 TypedApiClient 泛型 fetch 封装,支持请求拦截器与响应处理器链;统一错误为 ApiClientError,携带 status、errorCode、retryAfter,并提供 isRetryable、isAuthError 判断;内置认证、日志、snake_case 转换等拦截器示例;针对 429 响应解析 Retry-After 并自动重试;提供 Next.js 服务端客户端(结合 cookies() 与缓存控制);提供 Python httpx 异步 BackendClient,支持 Pydantic 模型反序列化;附带 camelCase 与 snake_case 互转工具。
使用方式:通过 client.use(...) 组合拦截器,用 get/post/put/delete 发起请求;服务端用 createServerClient() 复用同一客户端;Python 侧实例化 BackendClient 并传入 response_model。
适用场景:为现有 apiClient 与 serverApiClient 增加拦截器、重试与类型化错误;新增类型化接口封装;统一前后端错误处理;桥接 FastAPI 的 snake_case 与前端 camelCase。
限制:不适用于 Webhook 签名校验、服务端限流、GraphQL 客户端与直接数据库查询;资料未提供安装命令、依赖版本、收费与平台信息。