import axios from 'axios' const port = "8080" //const baseURL = env.BaseURL || `http://localhost:{port}/api/` const axiosAPI = axios.create({ withCredentials: true, baseURL : `http://localhost:8080/api/` // it's not recommended to have this info here. }); // implement a method to execute all the request from here. const apiRequest = (method, url, request, additionalHeaders = {}) => { let headers = { authorization: "", ...additionalHeaders }; console.log("API: ", url, JSON.stringify(request)) //using the axios instance to perform the request that received from each http method return axiosAPI({ method, url, data: request, headers }).then(res => { return Promise.resolve(res.data); }) .catch(err => { return Promise.reject(err); }); }; // function to execute the http get request const get = (url, request, additionalHeaders = {}) => apiRequest("get",url,request); // function to execute the http delete request const deleteRequest = (url, request) => apiRequest("delete", url, request); // function to execute the http post request const post = (url, request, additionalHeaders = {}) => apiRequest("post", url, request, additionalHeaders); // function to execute the http put request const put = (url, request) => apiRequest("put", url, request); // function to execute the http path request const patch = (url, request) => apiRequest("patch", url, request); // expose your method to other services or actions const API ={ get, delete: deleteRequest, post, put, patch }; export default API;