6

如果 GET 请求如下

$(window).bind('beforeunload', function() {
    // GET request
});

并且页面在 GET 请求完成之前被放弃

目标服务器还会处理请求吗?或者它会以某种方式消失?


我想在beforeunload触发时发送服务器数据,但不会从用户那里窃取无用的 ms。

如果有人可以帮助我,那将非常有用。

4

2 回答 2

1

在大多数情况下是的,但这取决于 Web 应用程序服务器。有些可以检测到断开连接并随请求停止。

于 2010-07-23T18:44:19.760 回答
1

如果它是一个异步请求,那么服务器可能会处理它(如果它收到请求),但我不知道您是否可以保证在页面卸载之前请求将通过或者是否会被处理 - 这可能取决于在实际的 Web 服务器上(其他人可能有更多信息)。如果您发出同步请求,页面将等待直到请求通过并返回响应(因此在这种情况下,可以保证处理)。但是,这意味着您的浏览器将被锁定,直到该请求完成,这可能是不可取的。

于 2010-07-23T18:44:39.467 回答