Facebook应用程序请求:如何确定谁邀请谁?
问题描述:
我们即将构建一个将在XFBML IFrame中运行的Facebook应用程序。我们已经找到了很好的tutorial(作者的荣誉)。现在,还有一个问题需要处理。Facebook应用程序请求:如何确定谁邀请谁?
基本上,我们只是想知道如何确定邀请朋友加入应用程序的人的UID。举例来说,用户A邀请用户B加入Cool-App。用户B看到应用请求,并通过接受邀请进行响应。现在的问题是,我们如何知道用户B是由用户A引用的?
请帮忙。
答
使用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的请求怎么办?)
答
好吧,幸运的是,我们找到了最接近可能的答案。
FBML有fb:req-choice我们通常在fb:request-form中使用的标签。也可以嵌入后者的Content属性中。
它看起来像这样:
<fb:req-choice url="URL_HERE" label="BUTTON_TEXT_HERE"/>
..where URL_HERE是您的应用程序基础URL加上像这样的地方的相对路径:
http://apps.facebook.com/my_cool_app/path/to/somewhere
如:
http://apps.facebook.com/my_cool_app/users/invite/referred-by/1234567890
这实际上是用户“接受”或“确认”的按钮。触发时,FB重定向到您提供的链接。
就是这样。其余的由你的申请决定。
+0
从来没有考虑过这一点。非常好的方法! – 2010-11-25 12:11:49
这实际上在推荐过程中发挥作用。您可以使用它来存储此用户邀请的朋友的ID,并稍后使用它来验证是谁转介了注册人。在你的应用程序中这样做。 – MkVal 2010-11-23 13:18:09