5
httpリクエストを中止するグローバルメソッドを設定する方法はかなり明確です。
$scope.canceller = $q.defer();
var API = $resource('http:/foo.com', {}, {get: {
method:'GET',
timeout:$scope.canceller.promise
}});
$scope.abortRequests = function() {
$scope.canceller.resolve();
}
しかし、私は特定の要求だけを中止できるようにしたいと考えています。中止する必要のある要求に対して別のリソースを定義することはできますが、それはかなり醜いです。条件付きでタイムアウトを許可する$リソースを呼び出すときに、パラメータなどで渡すことができる方法はありますか?多分、次の行に沿って:
var API = $resource('http:/foo.com', {}, {get: {
method:'GET',
timeout:function() { if (FOO) { return $scope.canceller.promise; }}
}});
しかし、どのように私はFOOにアクセスできますか?
ありがとうございました!
私はこれを行うための方法が見つかりませんでしたので、このプルリクエストからパッチを適用しました:https://github.com/angular/angular.js/pull/5613 - それは正常に動作するようです。今、上記のコード例を使用して、私はちょうど APIを呼び出すことができます。$ abort(); 要求を中止します。 –