繁体   English   中英

Angular JS Interceptor处理HTTP错误状态

[英]Angular JS Interceptor to handle HTTP Error status

我使用AngularJS作为我的应用程序和ui-route。 我的应用程序中的服务如下所示:

(function() {
'use strict';

angular
    .module('myProject.myModule')
    .factory('myService', myService);

myService.$inject = ['$http', 'api_config'];

function myService($http, api_config) {
    var service = {
            myServiceMethod1: myServiceMethod1,
            ...
    };

    return service;

    ////////////

    function myServiceMethod1(params) {
        return $http.get(api_config.BASE_URL + '/path');
    }

现在我将以这种方式实现(全局)拦截器,只要响应状态是HTTP 403,拦截器就应该处理它。 这个拦截器应该是全球性的。 非常感谢!

尝试类似的东西

angular
    .module('myProject.myModule')
    .config(['$httpProvider', function ($httpProvider) {

 $httpProvider.interceptors.push(['$q', '$location', function ($q, $location) {
        return {
            'responseError': function(response) {
                if(response.status === 401 || response.status === 403) {
                    $location.path('/signin'); // Replace with whatever should happen
                }
                return $q.reject(response);
            }
        };
    }]);
}]);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM