如何处理中止的同步AJAX

时间:2012-11-12 21:11:50

标签: javascript ajax jquery

我的网络服务器可以更改其IP以响应特定的HTTP请求。 问题是,浏览器使用同步$.ajax()发布此请求。由于服务器IP已更改,请求将在超时后中止(在firebug net选项卡中为“Aborted”)。但是,由于帖子是同步的,浏览器(在这种情况下为FF)无限挂起。据我所知,不可能超时或以编程方式中止同步AJAX。

由于许多实际原因,我无法将请求更改为异步。任何想法如何处理这种情况?感谢

1 个答案:

答案 0 :(得分:1)

您可以选择几种选择。

更改服务器端行为

更改服务器上的Web应用程序以在更改其IP地址之前完成对客户端的响应。然后,无论调用是否成功,您的应用程序都会收到响应。

使用异步AJAX调用

言自明的。你不想这样做,但你真的应该这样做,而不仅仅是你现在遇到的问题。如果您的应用程序确实需要进行重大更改才能生效,那么它可能还有其他可以重新考虑的设计问题。

目前你正在使用一种即发即弃的方法,所以我真的不明白为什么这会是一个问题。