我想要做的是取消請求或停止偵聽特定請求的響應。我不能在請求中使用timeout
。是否取消的決定僅在請求完成後完成。我已經在ajax jQuery as found in this中看到了解決方案。是否有相同的角度解決方案。我使用$http
來發出POST請求。AngularJS:如何終止一個http請求,我還沒有收到迴應
2
A
回答
4
這在the documentation描述:
超時 - {號|服務承諾} - 超時以毫秒爲單位,或已解決時,應中止請求承諾。
所以,發送請求時,通過一個承諾的配置超時,並解決它,當你決定中止:
var cancelDefer = $q.defer();
$http.get(url, {
timeout: cancelDefer.promise
}).success(...);
// later, to cancel the request:
cancelDefer.resolve("cancelled");
+0
我可以知道哪個角度版本在超時時支持承諾對象嗎?我使用v1.2.26 –
+1
當然:轉到文檔頁面,確保選擇左上角的版本1.2.26,並查看該版本是否支持該版本。 –
0
我想補充我最近使用的的CoffeeScript版本:
canceller = $q.defer()
$http.get (requestUrl, { timeout: canceller.promise })
.then (response) ->
$scope.remoteData = response.data;
$scope.cancel =() ->
canceller.resolve 'Cancelled http request'
相關問題
- 1. 一個AJAX HTTP請求終止在Drupal
- 2. 使用telnet的HTTP請求沒有得到任何迴應
- 3. 如何阻止Apache回答http請求?
- 4. Jquery AJAX請求沒有收到響應
- 5. 阻止HTTP請求/響應回調?
- 6. 如何防止在AngularJS應用程序中重複$ http請求?
- 7. 我想寫一個httpServer,但是當我收到http請求時,socket.read()始終被阻止。
- 8. HTTP請求沒有HTTP響應
- 9. AngularJS:如何防止請求
- 10. AngularJS返回兩個http獲取請求,但只有第一個得到解決
- 11. 如何阻止HTTP請求?
- 12. 我應該阻止HTTP 1.0請求嗎?
- 13. Angularjs測試(Jasmine) - $ http返回'沒有未決請求刷新'
- 14. AJAX請求似乎並沒有收到迴應
- 15. Golang:如何在沒有響應的情況下終止/中止/取消入站http請求?
- 16. 發送一個HTTP POST請求,但JBOSS收到一個空的GET請求
- 17. 有沒有一個調試工具可以迴應你的HTTP請求?
- 18. 得到一個http請求
- 19. 使用http獲取請求終止的線程終止
- 20. angularjs和$ http請求
- 21. HTTP請求與angularJS
- 22. HTTP POST請求AngularJS
- 23. 如何中止HTTP的HTTP請求?
- 24. 終止上一個下載請求
- 25. HttpWebRequest突然停止工作,幾個請求後沒有收到響應
- 26. JBoss最終會停止響應請求,但是沒有OOME
- 27. 如何驗證一個http請求根本沒有?
- 28. 如何複製一個文件沒有捲曲的HTTP請求?
- 29. 收聽HTTP請求
- 30. AngularJS - 從異步HTTP請求返回值
您是否嘗試過使用請求攔截器? https://docs.angularjs.org/api/ng/service/$http – svarog