Правильный способ установить и переопределить заголовок запроса в Angular
Мне нужно установить глобальный http-заголовок для всех моих запросов из-за метода аутентификации, который мы используем. У нас есть Identity Server для аутентификации пользователя с использованием подхода SSO. Пока все хорошо, мы использовали перехватчики для глобальной установки заголовков. Но иногда нам нужно сделать запрос к стороннему API, который не использует какой-либо метод аутентификации. Как я могу переопределить заголовок аутентификации, который был настроен перехватчиком? Это рекомендуемый подход для этой проблемы?
1 ответ
Решение
В вашем перехватчике вы можете написать некоторую логику, чтобы решить, нужно ли вам добавлять заголовок или нет:
.factory('AuthHeaderInterceptor', function () {
function request(config) {
//if 3rd party url, don't add auth header
if(config.url.indexOf('third_party_url') !== -1) {
return config;
}
config.headers.Authorization = 'auth header';
return config;
}
return {
request: request
};
});