HttpClientOptions
接口{@link createHttpClient} 的配置项
签名
interface HttpClientOptions {
adapter: HttpAdapter
baseURL?: string | undefined
timeout?: number | undefined
validateStatus?: ((status: number) => boolean) | undefined
isBusinessSuccess?: ((response: HttpResponse) => boolean) | undefined
unwrapBusinessData?: (<T>(response: HttpResponse) => T) | undefined
retry?: RetryOptions | undefined
headers?: Record<string, string> | undefined
}成员
| 名称 | 类型 | 描述 |
|---|---|---|
| adapter | HttpAdapter | 传输适配器,见 `@guohanmin/http/adapters/*` |
| baseURL可选 | string | undefined | — |
| timeout可选 | number | undefined | 单次尝试的默认超时(毫秒),可被单次请求的 `timeout` 覆盖 |
| validateStatus可选 | ((status: number) => boolean) | undefined | 判断响应状态码是否代表成功,默认 `200 <= status < 300` |
| isBusinessSuccess可选 | ((response: HttpResponse) => boolean) | undefined | 业务层成功判断(可选),例如按 `{code,data,message}` 约定判断 code === 0 |
| unwrapBusinessData可选 | (<T>(response: HttpResponse) => T) | undefined | 业务层数据解包(可选),例如把 `response.data` 替换为 `response.data.data` |
| retry可选 | RetryOptions | undefined | — |
| headers可选 | Record<string, string> | undefined | — |
源码
packages/http/src/core/client.ts:17