用途:该技能提供前端应用与后端 API 集成的生产级模式,核心不是让 API 调用跑通,而是正确处理异步行为,避免竞态条件、过期数据、重复请求和糟糕的用户体验。适用于将 React、React Native、Vue 等前端连接后端 API、集成 ML/AI 端点(如 /predict、/recommend)、处理 UI 异步数据、修复数据过期或界面闪烁、设计可扩展的前端 API 层。
主要能力:1) API 层与关注点分离,集中 API 逻辑并用自定义 ApiError 归一化错误,安全处理 204 空响应;2) 竞态安全的状态管理,用取消标志防止过期响应覆盖新数据;3) 用 AbortController 取消进行中的请求,避免内存泄漏与过期更新;4) 指数退避重试,仅重试 5xx 或网络等瞬时失败;5) 防抖 API 调用,减少搜索输入等高频请求;6) 请求去重,用 inFlight Map 防止多组件重复调用。还给出 ML 预测取消、防抖搜索、乐观 UI 更新等示例。
使用方式:将 API 逻辑集中到独立层,用自定义错误类归一化错误,始终处理加载、错误、成功三态;网络请求优先用 AbortController,非 fetch 异步逻辑用取消标志;仅对瞬时失败重试;输入驱动接口用防抖;相同请求做去重。
限制:示例为原生 JavaScript 模式,使用 React Query、SWR、Apollo、Relay 等数据获取库时需自行适配;除非后端提供幂等键或等价去重契约,否则不要重试非幂等变更;不要在前端代码暴露特权 API 密钥,敏感请求应经后端代理。反模式包括重试 4xx、不做请求取消、易竞态的更新、静默吞错、多请求共用全局加载/错误状态、在组件内反复直接调用 API。