如何在Node/Express应用程序中检测浏览器或选项卡关闭



我目前正在开发这个Node+Express MVC应用程序,希望在浏览器或选项卡关闭时关闭Express服务器。我知道我可以使用窗口上的"beforeunload"事件侦听器在vanilla js脚本标记中完成这项操作,但我不知道如何将该信息发送回Express。有人有变通办法吗?或者有人知道我可以使用的软件包吗?谢谢

我认为您需要通过Web Worker在beforeunload事件处理程序中使用http请求。网络工作者可以运行单独的线程,而不是javascript的主线程。因此,您可以很容易地向服务器发出带有信息的http请求。

const beforeUnloadListener = (event) => {
event.preventDefault();
// You web worker should be here.
// in case of true return you tab will close 
// return true
};

这是WebWorker的链接。https://www.sitepoint.com/javascript-web-workers/?utm_campaign=1101742&utm_source=发送脉冲&utm_medium=推送

我希望它能帮助你。谢谢

最新更新