angularJS 1.0.x中所有HTTP请求的拦截器

angularJS 1.0.x中所有HTTP请求的拦截器,第1张

angularJS 1.0.x中所有HTTP请求的拦截器

官方文档中有一个很好的例子,适用于当前的稳定版1.2.0。

[ http://docs.angularjs.org/api/ng。$ http]
[1](页面的前四分之一,搜索拦截器)

angular.module('RequestInterceptor', [])  .config(function ($httpProvider) {    $httpProvider.interceptors.push('requestInterceptor');  })  .factory('requestInterceptor', function ($q, $rootScope) {    $rootScope.pendingRequests = 0;    return {'request': function (config) {     $rootScope.pendingRequests++;     return config || $q.when(config); }, 'requestError': function(rejection) {     $rootScope.pendingRequests--;     return $q.reject(rejection); }, 'response': function(response) {     $rootScope.pendingRequests--;     return response || $q.when(response); }, 'responseError': function(rejection) {     $rootScope.pendingRequests--;     return $q.reject(rejection); }        }    });

您可以存储当前时间,而不用计算未决请求,可以说为lastRequestTimestamp。如果将其与全局运行的计时器结合使用,则可以检测到上一个请求是多久之前的。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5020043.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存