js unload这个事件到底如何使用?

我想在页面关闭时跟服务器进行最后一次ajax的通信。

  • 我先试了beforeunload这个事件,

    window.addEventListener('beforeunload', (event) => {
               var e = event || window.event || e;
               e.returnValue=("message");
          });

    在Chrome浏览器中刷新 有时能触发 有时不能,而且多次 关闭标签没有触发

  • 然后试了unload这个事件,据说是会在卸载资源前先处理这个事件。

     window.addEventListener('unload', function(){
          // ajax()
    })

    关了页面什么也没有,我不知道它是否发送了请求,只好查看数据库是否变化,结果未变化

我查资料有人说页面关闭时无法与服务器通信,我也不确信。

我想问:

  • 这两个事件如何正确使用?
  • 关闭页面时,和服务器产生最后一次通信是否可能?
阅读 1.1k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题