我很想检测用户何时离开我的网站,以便准确记录相关用户的 session 时长。我想到了几个可能的解决方案:
我首先想到我可以使用 onbeforeunload 并发送一个简单的 ajax 来记录最后一个事件,但实践告诉我,onbeforeunload 目前是不可靠的,使用它是个坏主意,因为它不是跨浏览器。
然后我想我可以使用cookie来记录用户的 session 长度,每次用户显示事件时分别增加cookie值。这里的问题是我无法检测到哪个是用户的最后一次事件,并且我可以安全地插入 session 长度并知道它是准确的唯一可能方法是当用户已经有一段时间没有登录并且 cookie 的值是最后一个 session 长度。这不适合我,因为许多用户可能只打开该网站一次而再也不会访问它(例如),那么这些用户都不会被记录下来。
有人能解决这个问题吗?我似乎进行了搜索,但没有找到令人满意的答案。
提前致谢!
最佳答案
您无法判断用户何时离开您的网站,这根本不受 Internet 底层技术的支持。您所能做的就是在 session 过期之前告知最后一次请求的时间。
关于php - 检测用户退出站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16885544/