3

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

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

4

1 回答 1

1

您有几个可用的选项。

更改服务器端行为

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

使用异步 AJAX 调用

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

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

于 2012-11-12T22:41:14.230 回答