1

XFBMLIFrame内で実行されるFacebookアプリケーションを構築しようとしています。そのための良いチュートリアルはすでに見つかりました(作者へのkudos)。今、対処しなければならない問題がもう1つあります。

基本的には、友達をアプリケーションに招待した人のUIDを判別する方法を知りたかっただけです。たとえば、ユーザーAがユーザーBをCool-Appに招待するとします。ユーザーBはアプリケーション要求を確認し、招待を受け入れることで応答しました。ここで問題は、ユーザーBがユーザーAによって参照されたことをどのようにして知るのかということです。

助けてください。

4

2 に答える 2

2

幸いなことに、可能な限り最も近い答えが見つかりました。

FBML には、通常 fb:request-form 内で使用するfb:req-choiceタグがあります。後者の 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

例えば:

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

これは実際には、ユーザーが「受け入れる」または「確認する」ボタンです。トリガーされると、FB は指定したリンクにリダイレクトされます。

それでおしまい。残りはアプリケーション次第です。

于 2010-11-23T13:10:04.513 に答える
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>";
}

招待されたユーザーがこの特定の招待を実際に受け入れたかどうかを確認する方法はありません。(fe ユーザー C からもリクエストが来たら?)

于 2010-11-15T12:42:34.523 に答える