22 lines
569 B
TypeScript
22 lines
569 B
TypeScript
import axios from 'axios'
|
|
|
|
const baseURL = import.meta.env.DEV
|
|
? '/api'
|
|
: (import.meta.env.VITE_API_URL ? `${import.meta.env.VITE_API_URL}/api` : '/api')
|
|
|
|
export const api = axios.create({
|
|
baseURL,
|
|
withCredentials: true,
|
|
headers: { Accept: 'application/json', 'Content-Type': 'application/json' },
|
|
})
|
|
|
|
api.interceptors.request.use((config) => {
|
|
const token = document.cookie
|
|
.split('; ')
|
|
.find((row) => row.startsWith('XSRF-TOKEN='))
|
|
if (token) {
|
|
config.headers['X-XSRF-TOKEN'] = decodeURIComponent(token.split('=')[1])
|
|
}
|
|
return config
|
|
})
|