Mine 是一个基于画布的 FB 应用。在 Chrome 和 Firefox 上都面临一个问题,(尽管通常是 Chrome):
1.当我在新的隐身 Chrome 窗口 ( https://apps.facebook.com/myfbappnamespace/ )上点击我批准的 fb 应用程序安全 URL 时,仅第一次出现以下错误,当我刷新页面时出现错误消失了(大多数时候)
about:blank 的页面显示来自 http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b …os.com%2Ff4aeadb2&domain=www.mydomain.com&relation=parent&error=的不安全内容未知用户。
不安全的 JavaScript 尝试 从具有 URL http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=的框架访问具有 URL http://www.mydomain.com/control/myfacebookapp/的框架f2e4fe7b …os.com%2Ff4aeadb2&domain=www.mydomain.com&relation=parent&error=unknown_user。请求访问的框架将“document.domain”设置为“facebook.com”,但被访问的框架没有。两者都必须将“document.domain”设置为相同的值才能允许访问。
xd_arbiter.php:18不安全的 JavaScript 尝试 从具有 URL http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=的框架访问具有 URL http://www.mydomain.com/control/myfacebookapp/的框架f2e4fe7b …os.com%2Ff4aeadb2&domain=www.mydomain.com&relation=parent&error=unknown_user。请求访问的框架将“document.domain”设置为“facebook.com”,但被访问的框架没有。两者都必须将“document.domain”设置为相同的值才能允许访问。xd_arbiter.php:18
2.当我尝试 http url( http://apps.facebook.com/myfbappnamespace/ ) 时,控制台中显示的错误是:
不安全的 JavaScript 尝试 从具有 URL https://s-static.ak.facebook.com/connect/xd_arbiter.php?version=18#channel=的框架访问具有 URL http://apps.facebook.com/myfbappnamespace/的框架…Fcontrol%2Ffacebookappchannelurl%3Ffb_xd_fragment%23xd_sig%3Df23e84e85c%26。请求访问的帧具有“https”协议,被访问的帧具有“http”协议。协议必须匹配。
现在,当我登录我的 fb 帐户查看这些错误会发生什么时,它们消失了,只是有时。我知道我在查询中使用了“大多数时候”和“有时”,但这正是我正在发生的事情。我还搜索了论坛并意识到 fb 已经修复了这个应该是特定于 chrome 的旧问题。我已确保我的 FB.init 和其他调用是 location.protocol 值特定的。还在画布 url (http) 和安全画布 url (https) 中配置了正确的值。还尝试了两种设置:帐户设置->安全->安全浏览->(启用和禁用)
如果我在某处遗漏了什么,有人可以帮忙吗?