由于我们正在使用的身份验证方法,我需要为我的所有请求设置全局http标头。我们有一个Identity Server,可以使用SSO方法对用户进行身份验证。到目前为止,我们使用拦截器来设置全局标头。但有时我们需要向没有使用任何身份验证方法的第三方API发出请求。 如何覆盖拦截器配置的身份验证标头? 这是针对此问题的推荐方法吗?
答案 0 :(得分:2)
在您的拦截器中,您可以编写一些逻辑来决定是否需要添加标头:
.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
};
});