我有一个LoginFactory,它返回一个auth
对象,其中包含token
。我需要在我发出的任何REST API调用的标头中设置此标记,并将用户登录后发布。
在事实上共享此令牌的最佳方式是什么,以便可以在所述工厂中使用该值?
我尝试使用angular.module.value,但这似乎不起作用。 (该值永远不会被设置。)
答案 0 :(得分:0)
在你的工厂制作两种方法
_gettoken(){
return token;
}
_settoken(token_temp){
token=token_temp;
}
现在使用此工厂方法在
的任何地方使用它答案 1 :(得分:0)
我希望它会起作用
app.factory(' authInterceptorService',[' $ q',' $ location',' localStorageService',function($ q ,$ location,localStorageService){
var authInterceptorServiceFactory = {};
var _request = function (config) {
config.headers = config.headers || {};
var authData = localStorageService.get('authorizationData');
if (authData) {
**config.headers.Authorization = 'Bearer ' + authData.token;**
}
return config;
}
var _responseError = function (rejection) {
if (rejection.status === 401) {
$location.path('/login');
}
return $q.reject(rejection);
}
authInterceptorServiceFactory.request = _request;
authInterceptorServiceFactory.responseError = _responseError;
return authInterceptorServiceFactory;