facebook使用FB.Connect.showFeedDialog连接而不使用fb:login-button

时间:2009-07-20 00:39:48

标签: php facebook

我将facebook应用程序设置为iframe,我正在尝试使用FB.Connect.showFeedDialog将故事发布到用户Feed。我正在使用这个示例http://papermashup.com/using-facebook-connect/,在您使用fb:login-button登录之前,这个示例不起作用。

我一直试图修改代码好几天了,我想知道如果没有这个登录按钮,如果它是一个Facebook Iframe应用程序,它是否可能。

非常感谢任何帮助和指示。

1 个答案:

答案 0 :(得分:1)

没有fb:login-button肯定是可能的。实际上,如果您正在构建iframe应用,那么您可能根本不需要fb:login-button。您所需要的只是load the Facebook Connect libraries,然后是make the initialize call,就像这样(当然使用您自己的API密钥):

<script src="http://static.ak.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript"></script>
<script type="text/javascript">
    FB.init("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "/xd_receiver.htm");
    window.addEvent('domready',function(){
        FB_RequireFeatures(["CanvasUtil"], function(){
            FB.XdComm.Server.init("/xd_receiver.htm");
        });
    });
</script>

请注意,我在那里有一些MooTools,以确保在DOM准备好后发生RequireFeatures调用。如果需要,您可以坚持使用initializing docs中的示例。

无论如何,一旦你加载并初始化了FB Connect库,你应该可以完全访问JS库提供的API方法,你可以这样做:

var user_message_prompt = "Write something here!";
var user_message = {value: "Default message"};
if (FB.Connect) {
    FB.Connect.showFeedDialog(templateBundle, templateData, null,null,null,FB.RequireConnect.require,null,user_message_prompt,user_message);
}