Files
sprawozdania-frontend/src/lib/apiClient.ts
T

25 lines
600 B
TypeScript

// src/lib/apiClient.ts
import axios from 'axios';
export const api = axios.create({
baseURL: '/api',
headers: { 'Content-Type': 'application/json' },
});
api.interceptors.request.use(config => {
const token = localStorage.getItem('token');
if (token) config.headers.Authorization = `Bearer ${token}`;
return config;
});
api.interceptors.response.use(
res => res,
async err => {
if (err.response?.status === 401) {
localStorage.removeItem('token');
window.location.href = '/login';
}
return Promise.reject(err);
}
);