2017-07-14 7 views
0

今後のHTTPリクエストのためのトークンを含む 'Authorization'ヘッダを追加しようとしています。トークンの取得はうまくいくようですが、取得リクエストを行うとUnauthorizedエラーメッセージで失敗します。リクエストヘッダのAuthorizationヘッダーを確認した後

window.crUtil = /*window.crUtil ||*/ (function() { 
 

 
    // Angular Services 
 
    var $injector = angular.injector(['ng']); 
 
    var $http = $injector.get('$http'); 
 

 

 
    // getting the CFF data 
 
    function get_data() { 
 
    \t \t getJWTAWS(); 
 
     var url = '/AWS/getDATA/555'; 
 
\t \t \t \t console.log('AUTH header before call: ' + $http.defaults.headers.common.Authorization); 
 
     $http.get(url,httpHeader).then(function successCallback(response) { 
 
      var data = response.data; 
 
      var cff = initCff(); 
 
      alert(data.itemId); 
 
      
 
     }, function errorCallback(response) { 
 
      initCff(); 
 
      alert("Error while getting data "); 
 
     }); 
 

 
    } 
 
\t \t 
 
    function getJWTAWS() { 
 
     var httpConfig = { 
 
      cache: true, 
 
      params: {} 
 
     }; 
 

 
     $http.get('/AWS/token', httpConfig).then(
 
      function(response) { 
 
       if (response.data.accessToken) { 
 
        // add jwt token to auth header for all requests made by the $http service 
 

 
        $http.defaults.headers.common.Authorization = response.data.tokenType + ' ' + response.data.accessToken; 
 
       } 
 
      }, 
 
      function(error) { 
 
       alert('jwt token could not be retrieved.'); 
 
      } 
 
     ); 
 
    } 
 

 

 
})(); 
 

 
var result = util.get_data(); 
 
console.log ('called search function ' + result);

機能入手トークンは、()の値を返しますが、私はそのトピックに新たなんだと私はあればかなりわからないんだけど...要求ブロックに存在しません。トークンをヘッダーに追加する方法は適切です。 リクエストにヘッダーを含める適切な方法について助言してください。私はまた、 $ http.get(URL、httpHeaders)のようにgetリクエストに追加しようとしました... しかし、それも動作しませんでした。

答えて

0

てみてください、あなたのconfigブロックでこれを追加すると、あなたのrootscope

$httpProvider.interceptors.push({ 
    request: function (config) { 
     config.headers.Authorization = $rootScope.token; 
     return config; 
    } 
}) 
0

私は私はあなたが呼んで提供しなかったとして、完全にあなたの問題を理解していない

httpConfigにトークンを設定

あなたはヘッダを宣言するために苦労している場合は、このようなGETリクエストを作ってみる:

$http({ 
    method: 'GET', 
    url: YOUR_URL, 
    headers: { 
    'Content-Type': 'application/json', 
    'Authorization': AUTH_STRING_HERE 
    } 
}).then(function (response) { ... }); 

任意のヘッダーをそこのヘッダーオブジェクトに追加できます。

関連する問題