source: frontend/src/services/api.js@ b63d7b5

Last change on this file since b63d7b5 was b63d7b5, checked in by MBK <marija.karapandzova@…>, 4 months ago

Add pending requests functionality and filters for billing admins

  • Property mode set to 100644
File size: 950 bytes
Line 
1import axios from 'axios';
2
3const API_URL = process.env.REACT_APP_API_URL || 'http://localhost:8080/api';
4
5const apiClient = axios.create({
6 baseURL: API_URL,
7 headers: {
8 'Content-Type': 'application/json',
9 },
10});
11
12// Request interceptor to add JWT token
13apiClient.interceptors.request.use(
14 config => {
15 const token = localStorage.getItem('token');
16 if (token) {
17 config.headers.Authorization = `Bearer ${token}`;
18 console.log(' Token added to request:', config.url);
19 } else {
20 console.warn(' No token found for request:', config.url);
21 }
22 return config;
23 },
24 error => Promise.reject(error)
25);
26
27// Error handling interceptor
28apiClient.interceptors.response.use(
29 response => response,
30 error => {
31 console.error('API Error:', error.response?.data || error.message);
32 return Promise.reject(error);
33 }
34);
35
36export default apiClient;
Note: See TracBrowser for help on using the repository browser.