interceptors

This commit is contained in:
Kirill Ivlev 2024-12-18 16:16:28 +04:00
parent 5c78c45879
commit eb05627a98
2 changed files with 20 additions and 0 deletions

View file

@ -16,4 +16,15 @@ api.interceptors.request.use((config) => {
return config; return config;
}, (err) => Promise.reject(err)); }, (err) => Promise.reject(err));
api.interceptors.response.use(
(response) => response,
(error) => {
if (error.response && error.response.status === 401) {
localStorage.removeItem('token');
window.location.href = '/login';
}
return Promise.reject(error);
}
)
export default api; export default api;

View file

@ -1,8 +1,17 @@
import HeaderMenu from "../components/UI/HeaderMenu.tsx"; import HeaderMenu from "../components/UI/HeaderMenu.tsx";
import {useEffect, useState} from "react";
import api from "../api.tsx";
function Home() { function Home() {
const [message,setMessage] = useState('');
useEffect(() => {
api.get('test/hello').then((response) => {
setMessage(response.data.message);
})
}, [message])
return <> return <>
<HeaderMenu /> <HeaderMenu />
{ message }
<h1 className="font-bold underline">Home</h1> <h1 className="font-bold underline">Home</h1>
</> </>
} }