Browse Source
refactor: update class AxiosTransform (#2041)
rename transformRequestHook to transformResponseHook
pull/2053/head
Tianyuan Zhang
4 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with
7 additions and
7 deletions
-
src/utils/http/axios/Axios.ts
-
src/utils/http/axios/axiosTransform.ts
-
src/utils/http/axios/index.ts
|
|
|
@ -199,7 +199,7 @@ export class VAxios { |
|
|
|
|
|
|
|
const opt: RequestOptions = Object.assign({}, requestOptions, options); |
|
|
|
|
|
|
|
const { beforeRequestHook, requestCatchHook, transformRequestHook } = transform || {}; |
|
|
|
const { beforeRequestHook, requestCatchHook, transformResponseHook } = transform || {}; |
|
|
|
if (beforeRequestHook && isFunction(beforeRequestHook)) { |
|
|
|
conf = beforeRequestHook(conf, opt); |
|
|
|
} |
|
|
|
@ -211,9 +211,9 @@ export class VAxios { |
|
|
|
this.axiosInstance |
|
|
|
.request<any, AxiosResponse<Result>>(conf) |
|
|
|
.then((res: AxiosResponse<Result>) => { |
|
|
|
if (transformRequestHook && isFunction(transformRequestHook)) { |
|
|
|
if (transformResponseHook && isFunction(transformResponseHook)) { |
|
|
|
try { |
|
|
|
const ret = transformRequestHook(res, opt); |
|
|
|
const ret = transformResponseHook(res, opt); |
|
|
|
resolve(ret); |
|
|
|
} catch (err) { |
|
|
|
reject(err || new Error('request error!')); |
|
|
|
|
|
|
|
@ -18,9 +18,9 @@ export abstract class AxiosTransform { |
|
|
|
beforeRequestHook?: (config: AxiosRequestConfig, options: RequestOptions) => AxiosRequestConfig; |
|
|
|
|
|
|
|
/** |
|
|
|
* @description: Request successfully processed |
|
|
|
* @description: 处理响应数据 |
|
|
|
*/ |
|
|
|
transformRequestHook?: (res: AxiosResponse<Result>, options: RequestOptions) => any; |
|
|
|
transformResponseHook?: (res: AxiosResponse<Result>, options: RequestOptions) => any; |
|
|
|
|
|
|
|
/** |
|
|
|
* @description: 请求失败处理 |
|
|
|
|
|
|
|
@ -28,9 +28,9 @@ const { createMessage, createErrorModal } = useMessage(); |
|
|
|
*/ |
|
|
|
const transform: AxiosTransform = { |
|
|
|
/** |
|
|
|
* @description: 处理请求数据。如果数据不是预期格式,可直接抛出错误 |
|
|
|
* @description: 处理响应数据。如果数据不是预期格式,可直接抛出错误 |
|
|
|
*/ |
|
|
|
transformRequestHook: (res: AxiosResponse<Result>, options: RequestOptions) => { |
|
|
|
transformResponseHook: (res: AxiosResponse<Result>, options: RequestOptions) => { |
|
|
|
const { t } = useI18n(); |
|
|
|
const { isTransformResponse, isReturnNativeResponse } = options; |
|
|
|
// 是否返回原生响应头 比如:需要获取响应头时使用该属性
|
|
|
|
|