Facebook app iframe + JS Facebook.init + IE7 + Flash9沙箱错误

时间:2009-08-18 14:46:19

标签: javascript flash facebook

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


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

然而,在IE4的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代理。点击“确定”后,一切似乎都进一步发挥作用。

任何人都可以澄清导致这种情况的原因吗?

1 个答案:

答案 0 :(得分:1)

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

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