Add Axios Interceptor in Services where Api is called
Create Services folder in src
Create Api Folder and create index.js
import { url } from "../BaseURL";
import axiosApiInstance from "../Interceptor";
const outGetRegRegbasic = async (data) => {
return await axiosApiInstance.post(`${url}api/his7/reg/websrv/outGetRegRegbasic`, data)
}
export const _services = {
outGetRegRegbasic ,
};
Create url Folder and create index.js
export const url = 'http://35.234.63.118:30000/'
Create Interceptor folder and create index.js
import axios from 'axios'
const axiosApiInstance = axios.create({});
// Request interceptor for API calls
axiosApiInstance.interceptors.request.use(
async config => {
config.headers = {
'Access-Control-Allow-Origin': '*',
// 'Authorization': `Bearer ${store.getState()?.counter?.token}`,
// 'Authorization': `Bearer eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTUxMiIsInR5cCI6IkpXVCIsImN0eSI6IkpXVCJ9.eyJjbGllbnRpZCI6Im1hc2hyZXEiLCJuYmYiOjE2NTUxMTk2NzMsImV4cCI6MTY1NTEyMzI3M30`,
'Content-Type': 'application/json'
}
return config;
},
error => {
Promise.reject(error)
});
// Response interceptor for API calls
axiosApiInstance.interceptors.response.use((response) => {
return response
}, async function (error) {
const originalRequest = error.config;
if (error.response.status === 403 && !originalRequest._retry) {
originalRequest._retry = true;
axios.defaults.headers.common['Authorization'] = 'Bearer ' + 'token';
return axiosApiInstance(originalRequest);
}
return Promise.reject(error);
});
export default axiosApiInstance
import in views
import { _services } from './../../../../Services/Api/index'
Comments
Post a Comment