internet-explorer-8 - 如何检测同一页面已在 IE 中的另一个窗口中打开

标签 internet-explorer-8 internet-explorer-7 internet-explorer

有什么方法可以检查我的页面没有在 IE 的另一个选项卡或窗口中打开吗?假设我有 Page1 并且用户点击“新窗口”,这将打开一个新窗口并打开相同的页面。所以现在有两个页面实例。我想限制浏览器在任何给定时间只打开一个页面实例。

要求之一是用户必须能够刷新页面并在应用程序内仍处于相同状态。所以一次性代币是不合适的。

不确定有什么方法可以区分页面刷新和打开的新窗口,这就是我问的原因。

附言这不是针对普通网站的,我知道这样做通常是侵入性的和邪恶的。这里有一个很好的例子,因为它是一个庞大的 Web 应用程序。

最佳答案

实现这一点的最佳方法是让服务器端 token (许多银行都这样做)在每次请求时重新生成,并且必须传回页面才能运行。

所以基本上:

  • 您将生成的 token 附加到每个
    链接(作为查询字符串的一部分)
  • 您收到的任何不包含 token 的请求都可以被视为无效。
  • 在每次请求时生成一个新 token ,以便在任何 1 次只有 1 个 token 有效
  • 关于internet-explorer-8 - 如何检测同一页面已在 IE 中的另一个窗口中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2641812/

    相关文章:

    javascript - 针对数据 :uri in IE8? 的 32KB 限制的任何解决方法

    php - 使用PHP检测IE浏览器版本

    javascript - 来自 IE 或 Firefox 的 CORS 请求中没有 Referer header

    javascript - IE7 不支持 indexOf javascript 是真的吗?

    css - jcarousel 在 IE7 中不工作

    javascript - IE Scrollbar + Overflow Scroll + div on top of the

    javascript - 我的 html/javascript/css 网站在 IE 中有效,但在 FF 中无效

    javascript - IE 8 中的正则表达式 (Javascript) 问题

    internet-explorer-8 - <!DOCTYPE HTML> 用于 IE

    html - 当我无法更改 HTML 时,我可以阻止 IE 8 在 Quirks 模式下渲染页面吗?