javascript - Facebook 应用程序 iframe + JS Facebook.init + IE7 + Flash9 沙盒错误

标签 javascript flash facebook

在 facebook iframe 应用程序集成期间,我请求发布权限 - 我有加载 JS Connect 库并请求权限对话框的 HTML..


  FB_RequireFeatures(["XFBML"], function(){ 
        FB.Facebook.init("_MY_API_KEY", "MY_PATH/xd_receiver.htm");
        FB.Connect.showPermissionDialog('publish_stream');

但是在使用 IE7 的 IETester 中我得到了奇怪的错误

SecurityError: Error #2060: Security sandbox violation: ExternalInterface caller http://b.static.ak.fbcdn.net/rsrc.php/zDVWA/hash/bqv7w2jc.swf cannot access ..(MY APP PAGE)

    at flash.external::ExternalInterface$/_initJS()
    at flash.external::ExternalInterface$/addCallback()
    at flashutils::PostMessage()
    at XdComm()

据我所知,xd 文件适用于使用此 ExternalInterface 与 facebook 通信并显示对话框的 flash 代理。单击“确定”后,一切似乎都在进一步工作。

谁能解释一下是什么原因造成的?

最佳答案

IETester 并不完美,只是因为它无法完全模拟适当的 IE 环境。当事情变得棘手时,它开始出现奇怪的错误。没有比跨域 Facebook iframe 应用程序更棘手的了。

我会找到一个真正安装的 IE7 并检查那里是否存在问题。如果没有,那可能不值得你花时间。 Microsoft 提供了一个 Virtual PC非常适合这类事情的应用程序,以及许多XP and Vista test images包含各种版本的IE。它们的下载量很大,但我强烈推荐它们而不是 IETester。

关于javascript - Facebook 应用程序 iframe + JS Facebook.init + IE7 + Flash9 沙盒错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1294368/

相关文章:

javascript - 我们如何在关闭第一个弹出窗口后打开剑道第二个弹出窗口?

javascript - Angular : Code organisation of controllers

javascript - 无法将 JSearch 添加到我的项目中

javascript - 如果我给你一个函数的引用,你能得到函数的名称吗?

actionscript-3 - 使用 Flex SDK 将 ActionScript 编译成 SWF

javascript - 将 iframe 添加到 facebook 不再有效,因为大约 2 周

javascript - html 表单 - `required` 属性未通过 onclick 确认触发

flash - 替换 SWF 中的字符串

javascript - FB.Event.subscribe对象返回

asp.net - Facebook Connect 和 ASP.NET