javascript - 当浏览器选项卡中的 URL 更改时自动注销

标签 javascript php logout

我需要构建一个像大多数银行一样的功能。哪里..

如果用户已在浏览器选项卡中登录银行帐户,并且他/她再次更改浏览器的网址并移动到其他站点..并通过单击浏览器的“后退”按钮再次进入银行页面..然后银行自动登录来自该网站的用户。

我认为我们可以通过java脚本来做到这一点..但是,无法理解如何做到这一点。我使用 PHP 作为我的服务器端脚本。 PHP 可以做到这一点吗?

问候 苏雷什

最佳答案

这不是一个 java/PHP 问题,而是取决于您想要实现的确切行为。

“实时”跟踪用户的唯一方法是通过 JavaScript。因此,如果您想知道用户何时离开页面,您可以将自己绑定(bind)到事件监听器,然后执行 ajax 调用或类似的操作,使服务器端的 session 无效。请记住,用户可能在禁用 JS 的情况下浏览您的网站,因此您需要在服务器端进行后备。

我建议您使用存储机制(内置的 PHP session 存储或一些外部存储,如 Couchbase 或 Redis、Memached 等)在服务器端实现 session 存储,并将注销时间设置为合理的时间默认值(如果是银行应用程序,则较低)。

如果您已经掌握了基础知识,请使用 JavaScript 来丰富用户体验,例如,通过在用户注销时显示“倒计时”并向服务器发送 session 刷新 ajax 调用以在每次登录时更新 session 。用户与网站等进行交互。

如需更详细的信息,我需要您提出更多要求!

关于javascript - 当浏览器选项卡中的 URL 更改时自动注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11307608/

相关文章:

php - 未捕获的异常 'Google_Service_Exception',显示消息“调用PUT时出错

javascript - Google+ Oauth 2.0 - 注销效果很好,但刷新网页后自动登录

javascript - 为什么 Node 中的 PassportJS 不会在注销时删除 session

javascript - 使用 jquery 和推送状态从 url 中删除 url 参数

javascript - Knex 静默转换带有时区的 Postgres 时间戳并返回不正确的时间

php mysql 将图像上传到数据库

php - 我应该使用哪种方法,为什么?

php - 将值传递到 formmail.cgi 而不刷新(HTML 表单 PHP 处理)

javascript - 隐藏页面元素上的部分 html 代码

PHP 注销脚本,框架集中有 4 个框架