【问题标题】:Disable Cookies Inside A Frame/Iframe禁用框架/iframe 中的 Cookie
【发布时间】:2011-03-20 20:13:48
【问题描述】:

有没有办法以编程方式禁用由显示在框架/iframe 内的页面创建的 cookie?或者进一步概括,是否可以以编程方式禁用在此类页面上运行的 javascript?

谢谢,

DLiKS

【问题讨论】:

  • 您对这些在框架内显示的页面有任何控制权吗?
  • 不,我不需要,我需要访问者查看它们,但不允许页面设置或查看 cookie。

标签: javascript iframe cookies frames


【解决方案1】:

使用 iframe 沙盒属性 (html5) 将成为可能(在 chrome 中实现)

http://dev.w3.org/html5/spec/Overview.html#attr-iframe-sandbox

NullUserException 已经回答了你今天可以在没有浏览器支持的情况下做什么

【讨论】:

  • 谢谢,这个属性可以在其他使用chrome框架的浏览器中工作吗?
  • chrome 从版本 5 开始就有这个,所以它可能也在 chrome 框架中,其他浏览器可能很快就会实现这个
【解决方案2】:

如果您的意思是要通过网页中的代码更改浏览器的设置,那么不,这是不可能的(如果可能的话,这是一个巨大的安全漏洞,所有警报都会响起)。

但是,您可以通过编写插件来超越这一点,但是每个用户都必须首先下载该插件。您也可以请求更高的权限,但这取决于浏览器是否可以更改任何用户设置。

如果你的意思是你想在公司的每台电脑上编写一个脚本来禁用某些页面的 JS + cookie,你可以编写插件并将它们安装在任何地方,或者使用代理(正如其他人所建议的那样)和过滤页面。如果只是调试自制页面,可以使用各种浏览器的开发者工具栏,可以开启和关闭JS/Cookies。

你为什么想做这样的事情?如果您想禁用 cookie,您只需不使用 cookie 即可在您自己的页面上禁用它。 javascript 也是如此:不要将其添加到您的页面中,并且您已在页面上禁用它。

注意:如果任何页面会更改浏览器的任何用户设置,您的页面可能会被 Google、大多数病毒扫描程序和钓鱼预防工具列入黑名单。

【讨论】:

    【解决方案3】:

    对于您无法控制的外部网站,您可以更改它的唯一方法是使用服务器端脚本检索页面,过滤输入并将其显示给用户(即:充当代理)。

    出于安全原因,您不能使用 J/S 修改域(或子域 - 它可能取决于浏览器)之外的站点。

    【讨论】:

      猜你喜欢
      • 2012-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多