2017-09-19 132 views
0

我是LoopBack的新手。我已經使用它的默認服務器身份驗證。在標頭而不是網址中傳遞訪問令牌loopback

module.exports = function enableAuthentication(server) { 
    // enable authentication 
    server.enableAuth(); 
}; 

在此之後,我從登錄api獲取令牌。

那麼我將它傳遞中的所有服務調用的URL。

有什麼方法/環回設置允許我們將它傳遞到http標頭而不是http請求中的url嗎?

我正在使用angularjs。很容易設置標題爲所有服務電話使用這個$http.defaults.headers.common['Authorization'] = 'access_token'.

但是,如果我們必須在url param中傳遞它,那麼我必須在每個服務調用中寫入它。

任何人都可以提出一個方法來集網址PARAM ACCESS_TOKEN從角或回送設置的所有請求,以允許其在http頭

回答複製:這個問題涉及方法(如何)傳遞令牌頭在從角側HTTP調用。

+0

這是你在找什麼? https://stackoverflow.com/questions/30359463/how-do-i-use-the-access-token-in-loopback – titogeo

+0

它不工作,如果我在HTTP頭中設置的的access_token可能 –

+0

重複[如何使用在環回訪問令牌?如果我使用'config.headers [「授權」](https://stackoverflow.com/questions/30359463/how-do-i-use-the-access-token-in-loopback) –

回答

0

您可以在您的Angular Code中有請求攔截器,這將在每個HTTP請求的標題中設置Authorization token

創建一個工廠在標題中注入的身份驗證令牌。

module.factory('sessionInjector', function() { 
    var sessionInjector = { 
     request: function(config) { 
      config.headers['Authorization'] = 'Bearer '+Authtoken; 
      return config; 
     } 
    }; 
    return sessionInjector; 
}]); 

使用configsessionInjector你的角度$HTTPProvider,以便它截取每個HTTP請求並注入身份驗證令牌給它。

module.config(['$httpProvider', function($httpProvider) { 
    $httpProvider.interceptors.push('sessionInjector'); 
}]); 

this例如知道你怎麼可以用http interceptors注入Auth token和其他有用的東西到你的HTTP請求。

+0

] ='持證人'+ Authtoken;',它不適用於回送。我怎樣才能從攔截器添加查詢參數? –

+0

你想添加什麼樣的查詢參數? –

+0

我想添加access_token。 –