SuperAPI AI 工具集

data-client-rest-setup

编程与开发

查看项目

更新于 10-16 02:30

技能介绍

用途:为项目配置 @data-client/rest,同时支持全新接入与从现有 HTTP 库迁移。通常在 data-client-setup 检测到 REST 模式后应用,并先套用 data-client-rest 以获取准确实现模式。

主要能力:

  1. 安装:npm install @data-client/rest,或 yarn add / pnpm add @data-client/rest。
  2. 检测并迁移现有 HTTP 模式:扫描 package.json 与源码,识别 axios、原生 fetch(含包装函数)、ky、superagent、got,并分别按对应迁移参考处理;多种模式可共存,按文件分组独立迁移。无法确定时向用户询问来源库。
  3. 创建自定义 RestEndpoint 基类:扫描硬编码基础 URL/env 变量、认证头、Content-Type、错误处理、请求响应转换、查询串格式等,生成如 src/api/BaseEndpoint.ts 的基类,可覆写 getHeaders、getRequestInit、process、fetchResponse、searchToString、parseResponse 等;若认证令牌存于 React context,可用 hookifyResource 注入。

使用方式:迁移完成后创建基类,标准 CRUD 用 resource({path, schema, Endpoint}),非 CRUD 操作用 new BaseEndpoint()。注意 body 需用 body: {} as BodyType(真值),以便 POST/PUT/PATCH 正确发送请求体。

适用场景:前端项目中接入 @data-client/rest,或从 axios/fetch/ky/superagent/got 迁移到该 REST 层。

限制:端点必须配合 Entity 作为 schema,否则绕过规范化与缓存;若已用 Zod/Yup,应按需保留用于不需规范化的类型。本资料未提供具体收费、价格与平台信息。