SuperAPI AI 工具集

api-client

编程与开发

查看项目

更新于 10-15 20:30

技能介绍

用途:为调用后端 API 的前端应用提供集中式 TypeScript API 客户端,统一处理请求、鉴权与错误。

主要能力:类型化命名空间(auth、users、billing 等);401 时自动刷新令牌,并通过 isRefreshing/refreshPromise 对并发刷新去重;集成 TanStack Query 做缓存与状态管理;自定义 APIClientError 统一错误处理;响应自动将 snake_case 转为 camelCase;单例导出保证令牌状态一致。

使用方式:定义 APIClient 类,通过 setTokens/clearTokens 管理令牌,request 方法统一发起 fetch;刷新端点需设置 skipRefresh 防止无限循环;配合 queryKeys 工厂与 useQuery/useMutation 封装 hooks,如 useCurrentUser、useLogin。

适用场景:需要请求与响应类型安全、希望自动刷新令牌且不重复逻辑、使用 TanStack Query 缓存的前端项目。

限制与注意:资料未提供安装命令、依赖版本、平台与收费信息;需避免不去重刷新、忘记 skipRefresh、分散 fetch、无响应转换、创建多个客户端实例等常见错误。