Вопрос проверяет понимание механизмов авторизации и передачи токенов при работе с API.
Токен авторизации обычно передают в заголовке Authorization. В Axios его можно указать в параметрах запроса или задать глобально в экземпляре клиента. Чаще всего используется схема Bearer token. Такой подход применяется практически во всех REST API.
При обращении к защищенным API сервер ожидает токен в заголовках запроса.
Определение:
Authorization header — это HTTP-заголовок, который используется для передачи учетных данных или токена доступа.
Пример добавления токена в один запрос
axios.get("/api/profile", {
headers: {
Authorization: "Bearer TOKEN_VALUE"
}
});
Добавление токена в Axios instance
const api = axios.create({
baseURL: "/api"
});
api.defaults.headers.common["Authorization"] = "Bearer TOKEN_VALUE";
Добавление через interceptor
Этот способ используется чаще всего в реальных проектах.
api.interceptors.request.use(config => {
const token = localStorage.getItem("token");
if (token) {
config.headers.Authorization = `Bearer ${token}`;
}
return config;
});
Почему используется interceptor
Токен автоматически добавляется ко всем запросам.
Не нужно повторять код.
Удобно обновлять токен.
Оптимальный способ передачи токена — через заголовок Authorization, чаще всего с использованием interceptor или Axios instance.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию