Aborting a jQuery getJSON XMLHttpRequest

后端 未结 4 550
梦毁少年i
梦毁少年i 2020-12-29 10:25

Turns out this was an artefact of a Firebug bug. The Ajax request was cancelled, but Firebug continued reporting it as active. Details here.


I have long runnin

相关标签:
4条回答
  • 2020-12-29 11:06

    you may take a look at the JSONP-Plugin With this Plugin you have the ability to manually abort the request. Also take a look at "a cautionary note" at IBM's Technical library:

    First and foremost, there is no error handling for JSONP calls. If the dynamic script insertion works, you get called; if not, nothing happens. It just fails silently. For example, you are not able to catch a 404 error from the server. Nor can you cancel or restart the request.

    0 讨论(0)
  • 2020-12-29 11:08

    Another great article on handling this is found here: http://www.bennadel.com/blog/1500-Catching-Timeout-Errors-With-jQuery-Powered-AJAX.htm.

    I simply converted my .getJSON request to .ajax and added the timeout/error handling.

    Thanks!

    0 讨论(0)
  • 2020-12-29 11:09

    Calling abort resets the object; the onreadystatechange event handler is removed, and readyState is changed to 0 (uninitialized).

    i do not think it cancels the request itself, it just ignores any response (manipulating the event handler)- but i didnt really try it out yet.

    but it will deifnitely allow you to reuse the object - no matter if the browser still has some thread working with the old request.

    0 讨论(0)
  • 2020-12-29 11:11

    take a look at the jquery AJAX Queue/Cache/Abort/Block Manager, maybe this can help you to prevent you current situation.

    0 讨论(0)
提交回复
热议问题