weisk
8/13/2013 - 4:47 PM

Http Response interceptor. Handles 401 requests from the server

Http Response interceptor. Handles 401 requests from the server

//Works for 1.1.x versions. 1.0.x is similar and can be figured out using code comments
myapp.factory('myHttpResponseInterceptor',['$q','$location',function($q,$location){
  return {
    response: function(response){
      return promise.then(
        function success(response) {
        return response;
      },
      function error(response) {
        if(response.status === 401){
          $location.path('/signin');
          return $q.reject(response);
        }
        else{
          return $q.reject(response); 
        }
      });
    }
  }
}]);
//Http Intercpetor to check auth failures for xhr requests
myapp.config(['$httpProvider',function($httpProvider) {
  $httpProvider.interceptors.push('myHttpResponseInterceptor');
}]);