|
@@ -36,12 +36,14 @@ export interface DefaultApiResponse {
|
|
|
responseText?: string;
|
|
responseText?: string;
|
|
|
statusText?: string;
|
|
statusText?: string;
|
|
|
traceback?: string;
|
|
traceback?: string;
|
|
|
|
|
+ content?: string;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
export interface ApiFetchOptions<T, E = string> extends AxiosRequestConfig {
|
|
export interface ApiFetchOptions<T, E = string> extends AxiosRequestConfig {
|
|
|
silenceErrors?: boolean;
|
|
silenceErrors?: boolean;
|
|
|
ignoreSuccessErrors?: boolean;
|
|
ignoreSuccessErrors?: boolean;
|
|
|
transformResponse?: AxiosTransformer;
|
|
transformResponse?: AxiosTransformer;
|
|
|
|
|
+ qsEncodeData?: boolean;
|
|
|
handleSuccess?: (
|
|
handleSuccess?: (
|
|
|
response: T & DefaultApiResponse,
|
|
response: T & DefaultApiResponse,
|
|
|
resolve: (val: T) => void,
|
|
resolve: (val: T) => void,
|
|
@@ -118,6 +120,9 @@ export const extractErrorMessage = (
|
|
|
} catch (err) {}
|
|
} catch (err) {}
|
|
|
return defaultResponse.responseText;
|
|
return defaultResponse.responseText;
|
|
|
}
|
|
}
|
|
|
|
|
+ if (defaultResponse.message && defaultResponse.content) {
|
|
|
|
|
+ return `${defaultResponse.message}\n${defaultResponse.content}`;
|
|
|
|
|
+ }
|
|
|
if (errorResponse.message) {
|
|
if (errorResponse.message) {
|
|
|
return errorResponse.message;
|
|
return errorResponse.message;
|
|
|
}
|
|
}
|
|
@@ -187,8 +192,10 @@ export const post = <T, U = unknown>(
|
|
|
const { cancelToken, cancel } = getCancelToken();
|
|
const { cancelToken, cancel } = getCancelToken();
|
|
|
let completed = false;
|
|
let completed = false;
|
|
|
|
|
|
|
|
|
|
+ const encodeData = options?.qsEncodeData == undefined || options?.qsEncodeData;
|
|
|
|
|
+
|
|
|
axiosInstance
|
|
axiosInstance
|
|
|
- .post<T & DefaultApiResponse>(url, qs.stringify(data), {
|
|
|
|
|
|
|
+ .post<T & DefaultApiResponse>(url, encodeData ? qs.stringify(data) : data, {
|
|
|
cancelToken,
|
|
cancelToken,
|
|
|
...options
|
|
...options
|
|
|
})
|
|
})
|