Advertisement
Guest User

Untitled

a guest
Apr 30th, 2014
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. angular.module('security.interceptor', ['security.retryQueue'])
  2. .factory('securityInterceptor', ['$injector', 'securityRetryQueue', '$cookieStore', function ($injector, queue, $cookieStore) {
  3.     return {
  4.         response: function(originalResponse)
  5.         {
  6.             return originalResponse;
  7.         },
  8.         responseError: function (originalResponse) {
  9.             var exception;
  10.             if (originalResponse.headers){
  11.                 exception = originalResponse.headers('x-eva-api-exception');
  12.             }
  13.             if (originalResponse.status === 401 && (exception === 'token_not_found' || exception === 'token_expired')){
  14.                 queue.pushRetryFn(exception, function retryRequest() {
  15.                     return $injector.get('$http')(originalResponse.config);
  16.                 });
  17.             }
  18.             return originalResponse;
  19.         }
  20.     };
  21. }])
  22. .config(['$httpProvider', function($httpProvider) {
  23.     $httpProvider.interceptors.push('securityInterceptor');
  24. }]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement