AngularJS停止了对REST API的请求

时间:2015-12-31 10:49:01

标签: angularjs rest

我有一个AngularJS(1.4)应用程序,它依赖于对REST API的$ http.get请求。

有两种类型的请求,一种用于“搜索结果”,另一种用于“查看配置文件”。有时(但不一致),不返回“查看配置文件”的请求。签入Chrome网络标签后,它标记为已停止。

看起来似乎我可能达到Chrome最大连接限制 - 但我不明白这是怎么回事,因为每次调用$ http.get请求时都不会再次创建“连接” ?

有人有什么想法吗?

以下简化代码:

app.factory('garageService', function($http,$q) {

    var garageService = {};
    var url = ''; // CAN'T SHARE
    var token = ''; // CAN'T SHARE
    var radius = 50;

    // GET SEARCH RESULTS
    garageService.getList = function(lat,lng) {

      var deferred = $q.defer();

      if(window.XDomainRequest){
        //XDR Version for IE
      } else {
        $http.get(url+'/'+token+'/list/'+lat+'/'+lng+'/'+radius, { cache: true, timeout: 10000 }).success(function(response){
          deferred.resolve(response);
        }).error(function(){
          deferred.reject();
        });
      }

      return deferred.promise;

    }
    // GET VIEW PROFILE 
    garageService.getProfile = function(id) {
      var deferred = $q.defer();
      if(window.XDomainRequest){
        //XDR Version for IE
      } else {
        $http.get(url+'/'+token+'/get/'+id, { cache: true, timeout: 10000 }).success(function(response){
          deferred.resolve(response);
        }).error(function(){
          deferred.reject();
        });
      }
      return deferred.promise;

    }
    return garageService;

});

以下是来自工作请求的响应标头:

Access-Control-Allow-Credentials:true
Access-Control-Allow-Origin: //CAN'T SHARE
Cache-Control:no-cache, must-revalidate, post-check=0, pre-check=0
Connection:Keep-Alive
Content-Type:application/json
Date:Thu, 31 Dec 2015 10:28:37 GMT
ETag:"1451557717"
Expires:Sun, 19 Nov 1978 05:00:00 GMT
Keep-Alive:timeout=2, max=200
Last-Modified:Thu, 31 Dec 2015 10:28:37 GMT
Server:Apache
Transfer-Encoding:chunked
X-Powered-By:PHP/5.3.3

0 个答案:

没有答案