javascript - 离开页面前执行 GET 请求

标签 javascript ajax get jquery-events onbeforeunload

如果GET请求如下

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

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

目标服务器是否仍会处理请求?还是会以某种方式消失?


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

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

最佳答案

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

关于javascript - 离开页面前执行 GET 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3321300/

相关文章:

javascript - 无法将类添加到元素子项

javascript - 从数组添加值 - Jquery UI slider

ajax - 在 AJAX 加载的内容上解析 dojoType

javascript - 拒绝在 jQuery ajax 中延迟

rest - 带有正文的 RESTful API 的 HTTP GET 请求

php - 具有获取值的表单

javascript - CasperJS - 尝试通过循环填充下拉菜单时访问页面的内容

javascript - TypeError : $(. ..).on 不是prototype.js 的函数

asp.net - 使用 jQuery ajax 时如何在 VB.NET 中捕获异常

python - 在 Google App Engine 上使用 Python 导入 Flickr api 时出错