@devil-reaper/request
v1.1.1
Published
HTTP client based on axios with pluggable interceptors
Downloads
61
Readme
@devil-reaper/request
基于 axios 的 HTTP 客户端,支持插件化拦截器与多实例。
快速开始
import { get, post, setupRequest } from '@devil-reaper/request'
// 应用入口配置(推荐)
setupRequest({
baseURL: import.meta.env.VITE_API_URL,
timeout: 15_000,
onError: (msg) => {
// 在此调用 DrMessage 等 UI,避免 request 包依赖组件库
console.error(msg)
},
errorMessages: {
timeout: '请求超时',
offline: '网络不可用',
notFound: '资源不存在',
},
})
const list = await get({ url: '/user/list' })创建独立实例
import { createRequest } from '@devil-reaper/request'
const uploadClient = createRequest({
baseURL: '/upload-api',
timeout: 60_000,
})
await uploadClient.upload({ url: '/file', data: formData })请求级 meta
| 字段 | 说明 |
|------|------|
| skipToken | 不注入 Authorization |
| skipUnwrap | 返回业务原始 JSON(等同旧版 postOriginal) |
| skipErrorHandler | 不触发统一 HTTP 错误提示 |
| skipRefresh | 跳过 401 刷新逻辑 |
与旧版差异
- 已移除对
@devil-reaper/components/message、@devil-reaper/hooks的硬依赖 delele保留为别名,请改用del- 默认仍兼容芋道风格
code === 401刷新与unwrap: response => response.data
