即時通訊嘗試使附加用戶令牌的攔截器在每個請求中都存在的情況下,該令牌存在但它不發送它......通話結束後,我查看F12(Chrome開發工具)的電話和授權標題不存在...AngularJS不發送身份驗證標頭
但是,如果我一步一步調試,我可以看到如何在config.headers.Authorization有我的令牌...但仍然沒有發送通過請...我可以請求一些幫助嗎?
這是我攔截
$httpProvider.interceptors.push(function($q, $location, $cookies){
return {
request: function(config){
config.headers = config.headers || {};
let token = $cookies.get('user');
if (token) {
config.headers.Authorization = 'Bearer ' + token;
}
return config;
},
response: function(response){
return response;
},
responseError: function(response){
if(response.status === 401 || response.status === 403){
$location.path('/login')
}
return $q.reject(response);
}
}
})
CORS配置
var allowCrossDomain = function(req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET, POST, PATCH, PUT, DELETE, OPTIONS');
res.header('Access-Control-Allow-Headers', 'X-Requested-With,Content-Type,Authorization');
next();
}
配置在它之前發送
REQ/RES預檢
您的預檢'選項'請求是否返回'Access-Control-Allow-Headers:X-Requested-With,Content-Type,Authorization'? – lin
是的這是,這些是我把我的服務器端允許的標頭 – FridoxFL
你可以嘗試'console.log(配置);'直接上面'返回配置;'是你的配置裏面?這一切對我來說似乎都很好。 – lin