[英]AngularJS can't read response HTTP Headers from NodeJS server
我目前正在嘗試在NodeJS服務器和AngularJS客戶端之間進行基於令牌的身份驗證。
換句話說:服務器生成令牌,使用http標頭發送給客戶端,客戶端接收並設置要在下一個請求(在http標頭中)發送的令牌,當請求到達服務器時,將檢查是否包含先前發送的令牌令牌。 重復。
問題是我無法從AngularJS中讀取標頭,即使我可以通過Chrome的控制台看到標頭已在響應中成功設置。
到目前為止,我已經有了一個AngularJS攔截器(有人告訴我應該怎么做),如下所示:
angular
.module('injector', [])
.factory('sessionInjector', function(){
var injectedSession = {
response: function(res) {
console.log("RESPONSE: " + JSON.stringify(res.config.headers));
return res;
};
return injectedSession;
});
這是輸出:
RESPONSE: {"Accept":"application/json, text/plain, */*"}
我剛開始使用AngularJS,但我有點迷茫。 希望我沒有弄亂一些基本的東西。
謝謝。
當您點擊http請求時,它看起來像下面的樣子:
$http.get("your URL",)
.success(function (data,status, headers, config) {
console.log(headers('Content-Encoding'));
})
.error(function (error) {
canceller.reject(error);
});
}
然后,您將收到來自服務器的響應以及回調中的其他詳細信息,並且您可以像上面這樣標頭。
希望對您有幫助。 謝謝
似乎在改變
response
對於
'response'
搞定了
我不知道為什么會這樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.