在我的应用程序中,我需要阻止用户在两个不同的选项卡/窗口中打开相同的链接(链接是动态的而不是静态的),因为链接生成的 id 基础我不允许用户在不同的选项卡中打开相同的 id 信息。
我该如何预防?
在我的应用程序中,我需要阻止用户在两个不同的选项卡/窗口中打开相同的链接(链接是动态的而不是静态的),因为链接生成的 id 基础我不允许用户在不同的选项卡中打开相同的 id 信息。
我该如何预防?
我认为您最接近的是:
document.body.innerHTML = ''
当然,这对用户来说是一件可怕的事情,并且可以通过在调试工具中破解 JS 或仅通过复制/粘贴或截取信息的屏幕截图来轻松击败。
Web 浏览器的设计目的不是为了限制用户使用他们获取的信息可以下载的内容。
您可以使用本地存储来标记在加载活动中打开的页面,并在加载检查中卸载时重置标记检查是否设置了标记,然后限制其他允许。
如果您使用 window.open() 为窗口命名,它不会打开多个窗口/选项卡。
例子:
window.open("http://www.google.com", "myWindow");
如果你有一个 id 来区分窗口,代码可能是这样的:
window.open("url_for_id", "window" + id);
我不认为你能做到这一点。但是您可以这样做每次用户查看页面时生成一个令牌并将其存储到会话以及页面中您可以防止用户从两个选项卡提交数据