【问题标题】:Facebook Application Requests: How to determine who's invited whom?Facebook 申请请求:如何确定谁邀请了谁?
【发布时间】:2010-11-15 11:26:58
【问题描述】:

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

基本上,我们只是想知道如何确定邀请朋友加入应用程序的人的 UID。例如,用户 A 邀请用户 B 加入酷应用。用户 B 看到应用程序请求,并通过接受邀请来响应。现在的问题是,我们如何知道用户 B 是由用户 A 推荐的?

请帮忙。

【问题讨论】:

    标签: facebook iframe request xfbml


    【解决方案1】:

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

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

    看起来像这样:

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

    ..其中 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 会重定向到您提供的链接。

    就是这样。其余的取决于您的应用程序。

    【讨论】:

    • 从来没有考虑过这个。非常好的方法!
    【解决方案2】:

    使用FBML request-form 标签时,您可以将受邀用户检索为 POST var。
    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>";
    }
    

    据我所知,无法确定受邀用户是否真的接受了这个特定的邀请。 (例如,如果他也收到用户 C 的请求怎么办?)

    【讨论】:

    • 这实际上在推荐过程中起作用。您可以使用它来存储此用户邀请的朋友的 ID,然后使用它来验证谁推荐了注册人。在您的应用程序中执行此操作。
    猜你喜欢
    • 2021-08-16
    • 1970-01-01
    • 2017-11-19
    • 2018-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多