Angular $http.post 请求发送双重请求。?

Angular $http.post request send double request.?

我正在使用 Angular $http.post 请求,我的响应是在大约 5-8 min 之后出现的,所以 Angulars 在这里失败了,因为当响应没有在特定时间到达而不是发送返回第二个请求我们如何设置请求响应的时间来等待?

$http 中有一个超时 属性,您可以使用它。

示例 get 下面

app.run(function($http, $q, $timeout){

  var deferred = $q.defer();

  $http.get('/path/to/api', { timeout: deferred.promise })
    .then(function(){
      // success handler
    },function(reject){
      // error handler            
      if(reject.status === 0) {
         // $http timeout
      } else {
         // response error status from server 
      }
    });

  $timeout(function() {
    deferred.resolve(); // this aborts the request!
  }, 1000);
});

docs

中阅读更多相关信息