【问题标题】:How to clear session if internet is disconnected?如果互联网断开连接,如何清除会话?
【发布时间】:2019-03-27 12:52:09
【问题描述】:

如果 javascript 中的 Internet 断开连接,我想清除会话值。我正在做一个金融交易项目,所以需要更多的安全性。如果互联网断开或重新连接,则会话应清除或过期。

这是我的会话值

$_SESSION["email"];

【问题讨论】:

  • 我想在客户端,在浏览器中清除它。
  • 您可以使用navigator.onLine。并同意 jaromandaX
  • 我正在尝试通过 ajax 清除会话,但是当连接丢失时,ajax 不起作用然后会话不会清除。如何清除java脚本中的会话?
  • 我已经通过编辑帖子描述了会话值,检查它
  • 好的,那我们能做些什么呢?有没有办法解决这个问题?

标签: javascript php session


【解决方案1】:

如果互联网断开,您将无法访问服务器。

其次,Javascript无法访问PHP。

但是,Javascript 可以删除会话 cookie

在普通的 JS 中,是这样的:

function delete_cookie( name, path, domain ) {
  if( get_cookie( name ) ) {
    document.cookie = name + "=" +
      ((path) ? ";path="+path:"")+
      ((domain)?";domain="+domain:"") +
      ";expires=Thu, 01 Jan 1970 00:00:01 GMT";
  }
}

或者在 jQuery 中:

$.cookie('foo', null, {path: '/'});

如果它是一个仅限 HTTP 的 cookie,那么您将无法删除它。

您只需要在 PHP 设置中使用

禁用 HTTP
session.cookie_httponly = 0

但这会带来一些安全风险,因此请明智地选择您是否真的需要它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-22
    • 2023-01-05
    • 2014-03-28
    • 2021-07-27
    • 1970-01-01
    • 2018-01-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多