我正在开发一个有角度的网络应用程序,它需要与带有Bearer令牌的服务器通信。所以令牌将在每10分钟到期,并且在令牌到期后,下一个请求将导致statusCode 401和statusText未经授权的错误。
我可以看到在令牌过期后我的chrome控制台中会显示此错误。当发生此错误时,会调用我的有角度的http拦截器的responseError处理程序,但rejectReason的状态为:0和statusText:''。
我不知道为什么没有填充status和statusText,我需要检查代码401并再次调用服务器来刷新我的令牌。
请查看我的拦截器代码和资源服务代码。
任何帮助都会非常感激。
var addToken = function(user, $q, $injector){
var request = function(config){
if(user.profile.loggedIn){
config.headers.Authorization = 'Bearer ' + user.profile.token;
}
return $q.when(config);
};
var responseError = function(rejectReason){
//over here i want to check the error status
return $q.reject(rejectReason);
};
return{
request: request,
responseError: responseError
};
};