こちらのドキュメントに従って、Facebookでアプリの「リクエストの送信」機能を実装することができました。
ここで、ユーザー「A」がユーザー「B」から送信されたリクエストを受け入れる場合、ユーザー「B」にアプリ固有のギフト(画像)を受け取ってもらいたいと思います。私の質問は、ユーザー「A」を招待したのがユーザー「B」であることがどうやってわかるのかということです。(ユーザー'C'ではありません)
ありがとう。
こちらのドキュメントに従って、Facebookでアプリの「リクエストの送信」機能を実装することができました。
ここで、ユーザー「A」がユーザー「B」から送信されたリクエストを受け入れる場合、ユーザー「B」にアプリ固有のギフト(画像)を受け取ってもらいたいと思います。私の質問は、ユーザー「A」を招待したのがユーザー「B」であることがどうやってわかるのかということです。(ユーザー'C'ではありません)
ありがとう。
リクエストIDを、リクエストを開始したユーザーBと一緒にデータベースに保存します。
ユーザーAがリクエストをクリックすると、アプリにリダイレクトされ、FacebookからリクエストIDが送信されます。データベースでリクエストIDを検索して、開始したユーザーを取得します。
リクエストIDを取得するいくつかの例は、リクエストの削除に関するFacebookのドキュメントに含まれています。
技術的ではありませんが、ギフトに関するセクションがあるリクエストのベストプラクティスに関するドキュメントを確認することもできます。
別の方法は、グラフAPIから送信者を取得することです(これはほとんどの場合、上記のソリューションよりも遅いことに注意してください)。user_idをrequest_idに連結することで、特定のリクエストオブジェクトIDが得GET
られ、次のようなグラフAPIにリクエストを発行できます。
https://graph.facebook.com/<REQUEST_OBJECT_ID>?access_token=APP_ACCESS_TOKEN
応答では、送信者は次のfrom
属性に含まれています。
{
"id": "259855964134806_4",
"application": {
"name": "Betcafe",
"namespace": "betcafe-play",
"id": "240039049434634"
},
"to": {
"name": "Zuck",
"id": "4"
},
"from": {
"name": "Todd Chaffee",
"id": "532338216"
},
"message": "Join my team so we can pass balls to each other and help Milan win the weekly cup!",
"created_time": "2012-09-10T16:43:45+0000"
}