Kliko/services/request.tsx
2024-08-01 11:53:43 +02:00

53 lines
980 B
TypeScript

import axios from 'axios';
const API_URL = 'https://kliko.maartenvr98.nl/api/v1/';
const CONFIG = {
timeout: 3000,
};
export class Request {
/**
* Send GET request to API
*
* @param url
* @param headers
* @returns {Promise<AxiosResponse<any>>}
*/
static get(url: string, headers = {}) {
return axios.get(API_URL + url, {
...CONFIG,
...headers,
});
}
/**
* Send POST request to API
*
* @param url
* @param body
* @param headers
* @returns {Promise<AxiosResponse<any>>}
*/
static post(url: string, body = {}, headers = {}) {
return axios.post(API_URL + url, body, {
...CONFIG,
...headers,
});
}
/**
* Send PUT request to API
*
* @param url
* @param body
* @param headers
* @returns {Promise<AxiosResponse<any>>}
*/
static put(url: string, body = {}, headers = {}) {
return axios.put(API_URL + url, body, {
...CONFIG,
...headers,
});
}
}