AngularJS で $http リクエストをキャンセルするにはどうすればいいですか? 質問する

AngularJS で $http リクエストをキャンセルするにはどうすればいいですか? 質問する

AngularJSでAjaxリクエストが与えられた場合

$http.get("/backend/").success(callback);

別のリクエストが開始された場合(たとえば、同じバックエンド、異なるパラメータ)、そのリクエストをキャンセルする最も効果的な方法は何ですか。

ベストアンサー1

この機能は1.1.5リリースに追加タイムアウトパラメータ経由:

var canceler = $q.defer();
$http.get('/someUrl', {timeout: canceler.promise}).success(successCallback);
// later...
canceler.resolve();  // Aborts the $http request if it isn't finished.

おすすめ記事