Files
Web_Template_Vue3_Dev/AI-Coding/openspec-lite/modules/api-system.yaml

35 lines
1.3 KiB
YAML
Raw Normal View History

# Module Specapi-systemsrc/api + axios request 封装)
module:
id: api-system
name: API 层src/api 域拆分 + src/utils/request.ts
type: core
entrypoints:
- src/api/
- src/utils/request.ts
public_api:
concept:
- "src/api/<domain>.ts按业务域拆分 API 函数"
- "src/utils/request.tsaxios 实例 + 拦截器 + 统一错误处理 + token 注入"
dependency_closure:
runtime:
- "axiosinstance + interceptors"
- "qsx-www-form-urlencoded 序列化)"
- "store/usertoken 注入、401/402 时 resetAll / refresh token"
- "plugin-vabgp.$baseMessage / gp.$baseLoadingloading 与错误提示)"
- "plugin-errorlogneedErrorLog/addErrorLog请求异常入库"
- "router401/403 跳转"
- "configbaseURL/requestTimeout/contentType/successCode/statusName/messageName/debounce 等"
- "api/refreshToken402 刷新 token 重试队列"
acceptance:
- "正常接口返回 code=200 时返回 data"
- "401 跳转 /login 且 resetAll 执行"
- "402 触发 refreshToken 并重放队列请求"
pitfalls:
- "request.ts 强依赖 gp全局注入与 user store抽取到新项目需明确入口安装顺序"
- "successCode/statusName/messageName 等与后端协议强耦合,迁移时先在规格声明差异"