C# · 12月 23, 2021

c# – 只要浏览器在asp.net中关闭,这是否可以清除会话?

在我的asp.net应用程序中,我想在浏览器关闭或我的选项卡(如果我的浏览器包含多个选项卡)关闭时清除会话.

请指导我摆脱这个问题……

解决方法 短版,没有.
服务器没有可靠的方法来检测客户端是否关闭了浏览器.这只是Web开发异步模式的本质.

长版,如果真的对你真的很重要;
在页面中放置一些javascript,在后台向您的网站发送常规帖子,并设置一个服务器端代理或服务,如果它没有收到这些常规的“心跳”信号,则会处理这些会话.

你可以将javascript回发放到页面的unload()事件中,但不要依赖它,它并不总是触发.