Chrome webkit inspector中不断产生“不安全的JavaScript尝试访问带有URL的帧…”错误
Chrome(或任何其他webkit浏览器)在使用Facebook API时会抛出大量这样的“不安全的JavaScript尝试访问带有URL的帧…”。
它不会干扰实际操作,但它确实使JavaScript控制台基本无法使用。
我想知道是否有一种方法来抑制这些错误,特别是在控制台? 或者,如果有其他解决scheme,你们可以想到,我真的很感激它。
谢谢。
您可以在testing期间通过使用--disable-web-security
命令行选项运行chrome来允许跨域请求。 这应该可以摆脱错误(并允许FB窥视你的testing;)
当来自不同域的源文件被加载并尝试访问document.cookie时,会发生这种情况。 它发生在头源(脚本标签),以及iframe文件,由于某种原因试图访问document.cookie。
有什么问题?
Unsafe JavaScript attempt to access frame with URL...
Chrome JS控制台中的Unsafe JavaScript attempt to access frame with URL...
错误消息。
正如@thechrisproject指出的那样 ,这些错误是由许多有信誉的第三方api和小部件引起的,包括但不限于:
- Facebook JS SDK
- Vimeo Iframeembedded
- Google地图Iframeembedded
我的理解为什么 🙁 请纠正我,如果我错了)
Chrome浏览器具有更严格的安全设置,并且/或者显示比竞争对手更多的错误。 API / Widget /embedded式作者试图做一些不能在所有浏览器中工作的东西(跨域/框架)(可能是为了他们自己的报告/分析),但是如果它们没有实际影响它们的小部件的可用性工作(只会导致很多烦人的错误)
快速回答
不,你不能( 只是 )在Chrome控制台中抑制这些错误。
解决scheme?
- 处理它。 这些错误实际上并没有打破这些第三方API和小部件,他们只是使控制台更难以使用
- 您可以将控制台设置为只logging警告,日志或debugging消息。 这将隐藏所有的错误。
- 您可以使用其他浏览器
- 作为@Dagg_Nabbit。 指出 ,您可以通过使用
--disable-web-security
命令行选项运行chrome来允许跨域请求。 更多信息在这里: 在Chrome中禁用相同的原产地政策 。 请注意,此设置会对浏览器的安全性产生负面影响。 我有2个铬快捷键,所以我可以用这个标志或没有这个标志打开它。
既然我们不能责怪Google的人构build这样一个安全的浏览器,我认为最好的解决scheme是使用Facebook的服务器端解决scheme(例如PHP SDK),它会为您节省很多,很多,很多,很多,很多头痛。 我在使用FB JavaScript SDK中看到的唯一优点是可以使用javascript / jQuery自己完成的popup式login。
如果在Facebook上注册您的应用程序时,您在站点URL字段中没有尾随的正斜杠,则可能会引发这些错误。 换句话说,你需要“ http://domain.com / ”而不是“ http://domain.com ”
您可以从developers.facebook.com/apps编辑设置 – >基本 – >网站URL来检查网站URL设置。
- 使TBODY在Webkit浏览器中可滚动
- Windows / C#开发中是否有可embedded的Webkit组件?
- 以编程方式更改animation规则中的webkit转换值
- Gmail和Google Chrome 12+如何在剪贴板function中使用粘贴图片?
- Webkit和jQuery可拖动跳跃
- 有没有办法从Cocoa WebView对象使用WebKit Web检查器?
- 什么是正确的“-moz-appearance”值来隐藏<select>元素的下拉箭头
- 在inputtypes=“数字”上禁用webkit的旋转button?
- setUseWideViewPort()和setLoadWithOverviewMode()是做什么的?