为什么我的Facebook Connect按钮会将我带到错误的URL?

时间:2010-06-23 18:32:07

标签: php javascript facebook

我正在尝试将我的网站与Facebook相关联。

如果我在PHP SDK中调用名为getLoginUrl()的方法,它将返回正确的登录URL。此URL包含许多参数,其中一个是我的API密钥,它是正确的。这是我的Connect按钮应该带我到的URL。

但是,当我实际点击我网站上的“连接”按钮时,会打开一个弹出窗口并显示“指定了无效的API密钥”。通过一些检查,我看到此弹出窗口中的URL显示“api_key = undefined”。实际上,URL与登录URL完全不同。

知道为什么会这样吗? 只有我能想象的冲突才是codeigniter或jQuery。

很难具体化。我猜这需要很好的Facebook SDK知识才能回答。

非常感谢。 :)

1 个答案:

答案 0 :(得分:1)

如果需要,PHP应该只处理登录回调,登录应该通过javascript完成。

FB api初始化:

<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
    FB.init({
        appId  : appId,
        status : true,
        cookie : true,
        xfbml  : true
    });
</script>

然后你可以在某个按钮上触发fb登录对话框:

FB.login(function(response) {
    //callback
}, {perms:'publish_stream'});

另外,请确保在“连接”标签下的fb应用中有正确的设置 - 应设置“连接网址”和“基本域”。如果他们链接到错误的域名,您将无法登录。