是否需要xd_receiver.htm?

时间:2011-02-22 15:46:29

标签: javascript facebook facebook-c#-sdk

我正在尝试诊断为什么当我在使用IE时尝试对Facebook进行身份验证时,我得到一个空白弹出窗口。

首先,我想确保我的环境设置正确。我的网站根目录中没有xd_receiver.htm。

问:xd_receiver.htm的目的是什么,是否需要与facebook-c#-sdk 5.0.3一起使用? 问:如果需要,xd_receiver.htm文件是否只需要在root或多个位置?

由于我的应用很简单,我使用以下代码片段来登录。一旦我被记录,我使用facebook-c#-sdk对我做一些简单的POST / feed。

<fb:login-button ... />

<script type="text/javascript" src="https://connect.facebook.net/en_US/all.js"></script>
<script type="text/javascript">

    FB.init({ appId: '<%= System.Configuration.ConfigurationManager.AppSettings["FacebookAppId"] %>', status: true, cookie: true, xfbml: true });
    function facebook_onlogin_ready() {
    // refresh page
        window.location.reload(true);
    }

</script>

对于为什么IE通过空白弹出窗口的任何想法都将不胜感激。

提前致谢。

史蒂夫

1 个答案:

答案 0 :(得分:5)

xd_receiver.htm不是必需的。这是旧的Javascript SDK的一部分。有一些原因导致弹出窗口无法在IE中运行。 1)如果你不在80或443端口.Facebook的Javascript SDK在IE中有一些带有非标准端口的错误。 2)尝试将您的应用设置为使用真实域在IIS上运行。 (您可以使用local.facebooksdk.net,因为它指向127.0.0.1)3)确保您的网站网址与您正在运行网站的网址完全匹配。这些配置设置非常重要。