三大接入方式
request-guard 不依赖请求库,你可以在任意项目中使用。我们为 Axios 提供了一套快捷接入方式,同时也为 wx.request 等其他请求方式做了处理,可通过 Wrapper 方式接入。
对比总览
| 接入方式 | 适用场景 | 返回值类型 | 可调用方法 |
|---|---|---|---|
| Axios 安装模式 | 项目使用 axios,可一键接入 | RequestGuardController | configure / setRules / addRule / clearRules / clearState / getStateSnapshot / createLoadingKey / isLoading / subscribeLoading / uninstall / circuitBreaker |
| Wrapper 模式 | 使用 fetch / 小程序 / 自定义 SDK | 包装后的请求函数 | 直接调用发请求,仅有 uninstall() |
| 纯配置模式 | 先配置规则,后续多处使用 | RequestGuardController | configure / setRules / addRule / clearRules / clearState / getStateSnapshot / createLoadingKey / isLoading / subscribeLoading / circuitBreaker(无 uninstall) |
如何选择
- 项目用 axios → Axios 安装模式(推荐,一键接入)
- 项目用 fetch / 小程序 / 自定义 SDK → Wrapper 模式
- 已经接入过,想在另一入口统一管理规则或运行时动态调整 → 纯配置模式
配置写法一致
无论哪种接入方式,rules、defaults、notify、logger 的写法完全一致。区别只在于"如何接管请求函数",治理能力的配置方式是统一的。
