feat: add defineApp and beforeRequest

This commit is contained in:
Ali BARIN
2022-10-17 23:29:20 +02:00
parent 314787f39c
commit 1760c6e454
7 changed files with 60 additions and 21 deletions

View File

@@ -1,12 +1,18 @@
import axios from 'axios';
import axios, { AxiosRequestConfig } from 'axios';
export { AxiosInstance as IHttpClient } from 'axios';
import { IHttpClientParams } from '@automatisch/types';
export default function createHttpClient({ baseURL }: IHttpClientParams) {
export default function createHttpClient({ $, baseURL, beforeRequest = [] }: IHttpClientParams) {
const instance = axios.create({
baseURL,
});
instance.interceptors.request.use((requestConfig: AxiosRequestConfig): AxiosRequestConfig => {
return beforeRequest.reduce((newConfig, beforeRequestFunc) => {
return beforeRequestFunc($, newConfig);
}, requestConfig);
});
instance.interceptors.response.use(
(response) => response,
(error) => {