Skip to content

Commit 98ef86b

Browse files
committed
give possibility to overide axios
1 parent de14b9e commit 98ef86b

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

src/templates/core/axios/request.hbs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{{>header}}
22

33
import axios from 'axios';
4-
import type { AxiosError, AxiosRequestConfig, AxiosResponse } from 'axios';
4+
import type { AxiosError, AxiosRequestConfig, AxiosResponse, AxiosInstance } from 'axios';
55
import FormData from 'form-data';
66

77
import { ApiError } from './ApiError';
@@ -66,10 +66,11 @@ import type { OpenAPIConfig } from './OpenAPI';
6666
* Request method
6767
* @param config The OpenAPI configuration object
6868
* @param options The request options from the service
69+
* @param axiosClient The axios client instance to use
6970
* @returns CancelablePromise<T>
7071
* @throws ApiError
7172
*/
72-
export const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions): CancelablePromise<T> => {
73+
export const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions, axiosClient: AxiosInstance = axios): CancelablePromise<T> => {
7374
return new CancelablePromise(async (resolve, reject, onCancel) => {
7475
try {
7576
const url = getUrl(config, options);
@@ -78,7 +79,7 @@ export const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions): C
7879
const headers = await getHeaders(config, options, formData);
7980

8081
if (!onCancel.isCancelled) {
81-
const response = await sendRequest<T>(config, options, url, body, formData, headers, onCancel);
82+
const response = await sendRequest<T>(config, options, url, body, formData, headers, onCancel, axiosClient);
8283
const responseBody = getResponseBody(response);
8384
const responseHeader = getResponseHeader(response, options.responseHeader);
8485

src/templates/core/axios/sendRequest.hbs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ const sendRequest = async <T>(
66
formData: FormData | undefined,
77
headers: Record<string, string>,
88
onCancel: OnCancel
9+
axiosClient: AxiosInstance
910
): Promise<AxiosResponse<T>> => {
1011
const source = axios.CancelToken.source();
1112

@@ -21,7 +22,7 @@ const sendRequest = async <T>(
2122
onCancel(() => source.cancel('The user aborted a request.'));
2223

2324
try {
24-
return await axios.request(requestConfig);
25+
return await axiosClient.request(requestConfig);
2526
} catch (error) {
2627
const axiosError = error as AxiosError<T>;
2728
if (axiosError.response) {

0 commit comments

Comments
 (0)