簡體   English   中英

AngularJS無法從NodeJS服務器讀取響應HTTP標頭

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM