Chrome(或任何其他webkit浏览器)在使用Facebook API时会抛出大量这些“不安全的JavaScript尝试访问带有URL的框架...”。
它不会干扰实际操作,但它确实使javascript控制台基本上无法使用。
我想知道是否有办法在控制台中专门抑制这些错误?或者,如果有其他解决方案,你们可以想到,我真的很感激。
感谢。
答案 0 :(得分:19)
答案 1 :(得分:4)
当加载来自不同域的源并尝试访问document.cookie时会发生这种情况。它发生在头源(脚本标签)以及因某种原因试图访问document.cookie的iframe文档中。
答案 2 :(得分:4)
问题是什么?
Chrome JS控制台中有大量Unsafe JavaScript attempt to access frame with URL...
错误消息。
作为@thechrisproject points out,这些错误是由许多声誉良好的第三方api和小部件引起的,包括但不限于:
我对为什么: 的理解(如果我错了请纠正我)
与竞争对手的浏览器相比,Chrome具有更严格的安全设置和/或显示更多此类错误。 API / widget / embed作者尝试做的事情(跨域/框架)在所有浏览器中都不起作用(可能是为了他们自己的报告/分析),但实际上并没有影响他们的小部件的可用性,如果它没有工作(只会导致很多恼人的错误)
快速回答
不,你不能(只)在Chrome控制台中抑制这些错误。
<强>方案吗
--disable-web-security
命令行选项运行chrome来允许跨域请求。更多信息请访问:Disable same origin policy in Chrome。请注意,此设置会对浏览器的安全性产生负面影响。我有2个镀铬快捷键,所以无论有没有这个标志我都可以打开它。答案 3 :(得分:3)
由于我们不能责怪Google的人员构建这样一个安全的浏览器,我认为最好的解决方案是使用Facebook的服务器端解决方案(例如PHP SDK),它会为您节省很多,很多,很多很多,很多头痛。我在使用FB javascript SDK时看到的唯一优势是弹出式登录,你可以使用javascript / jQuery自己做。
答案 4 :(得分:2)
如果在向Facebook注册应用程序时,在“站点URL”字段中没有向前的斜杠,则可能会引发这些错误。换句话说,您需要“http://domain.com / ”而不是“http://domain.com”
您可以从developers.facebook.com/apps修改设置 - &gt;中查看网站网址设置。基本 - &gt;网站网址。