У меня проблема. Для проверки аутентификации пользователя я в заголовках должен отправлять token Bearer.
Файл с настройками axios лежит в отдельной папке
Как мне передать токен через store приложения, а не через localStorage?
Через localStorage использую вот это :
import axios from 'axios';
import { API_URL } from './constants';
const HTTP = axios.create({ baseURL: API_URL });
HTTP.interceptors.request.use(
(config) => {
const accessToken = localStorage.getItem('access');
const updatedConfig = { ...config };
if (accessToken) {
updatedConfig.headers.Authorization = `Bearer ${accessToken}`;
}
return updatedConfig;
},
(error) => {
return Promise.reject(error);
}
);
Файлы:
Пример использования useApi :
const [createRoomData, createRoom] = useApi<ICreateRoomDataResponse>({
method: 'POST',
url: '/rooms/create',
});
useEffect(() => {
if (createRoomData.response) {
const data = {
connectionUuid:createRoomData.response.connection_uuid,
maxStudentsCount:createRoomData.response.max_students_count,
maxRoundTime:createRoomData.response.max_round_time,
maxRoundsCount:createRoomData.response.max_rounds_count,
}
dispatch(setRoomData(data));
}
}, [createRoomData.response, history, dispatch]);