Facebook应用程序请求:如何确定谁被邀请谁?

时间:2010-11-15 11:26:59

标签: facebook iframe request xfbml

我们即将构建一个将在XFBML IFrame内运行的Facebook应用程序。我们已经找到了一个很好的tutorial(对作者的称赞)。现在,还有一个问题我们需要处理。

基本上,我们只是想知道如何确定邀请朋友加入应用程序的人的UID。比如说,用户A邀请用户B加入Cool-App。用户B看到应用程序请求,并通过接受邀请进行响应。现在的问题是,我们怎么知道用户A被用户A推荐?

请帮助。

2 个答案:

答案 0 :(得分:2)

好吧,幸运的是我们找到了最接近的答案。

FBML有 fb:req-choice 标记,我们通常在fb:request-form中使用。也可以嵌入后者的Content属性中。

看起来像这样:

<fb:req-choice url="URL_HERE" label="BUTTON_TEXT_HERE"/>

..其中URL_HERE是你的application-base-url加上到某个地方的相对路径:

http://apps.facebook.com/my_cool_app/path/to/somewhere

e.g:

http://apps.facebook.com/my_cool_app/users/invite/referred-by/1234567890

这实际上是用户“接受”或“确认”的按钮。触发后,FB会重定向到您提供的链接。

就是这样。其余部分取决于您的申请。

答案 1 :(得分:1)

使用FBML request-form标记时,您可以将受邀用户检索为POST变量 php示例:

if(isset($_POST["ids"])) {
    echo "<center>Thank you for inviting ".sizeof($_POST["ids"])." of your friends on <b><a href=\"http://apps.facebook.com/".$app_url."/\">".$app_name."</a></b>.<br><br>\n";
    echo "<h2><a href=\"http://apps.facebook.com/".$app_url."/\">Click here to return to ".$app_name."</a>.</h2></center>";
}

我无法知道被邀请的用户是否真正接受了此特定邀请。 (f.e。如果他也收到用户C的请求怎么办?)