我在我的应用中使用Facebook Connect。我有它工作得很好,但在Safari Error控制台中,我看到这样的错误:
Unsafe JavaScript attempt to access frame with URL http://...#... from frame with URL http://www.connect.facebook.com/extern/login_status.phpapi_key=..&extern=2&channel=http...xd_receiver.htm.
Domains, protocols and ports must match.
该应用程序似乎运行正常,但我们看到Safari的定期挂起和其他不良行为。当我运行其他Facebook Connect应用程序时,我有时也会看到此错误,所以我认为这不是我们实现的问题。忽略这个警告是否安全?
答案 0 :(得分:3)
Safari的跨框架安全性比其他浏览器更严格,我已经完成了特定的try / catch包装来处理这些情况,如果它起作用的话,很棒。
无论哪种方式,都会像olliej建议的那样在上游发布bug。
答案 1 :(得分:1)
这意味着你正在尝试某种形式的跨域访问,这是不安全的 - 虽然它可能看起来是良性的,但是如果你使用nightlies或Safari4 beta你可能值得尝试找出你击中它的原因可以在Web检查器中使用调试器,并使其在所有异常中中断,这将使您可以看到它何时实际尝试跨源访问。
至于挂起,如果你能找到某种简化的测试用例,那么如果你能在http://bugs.webkit.org提交它们就会很棒
答案 2 :(得分:1)
这是一只红鲱鱼。请求仍然存在,一切正常,但WebKit仍然记录异常。