0

Facebookアプリケーションのリクエストを送信する必要があります。これにより、ユーザーがリクエストを受け入れたときに、送信者の名前と受け入れた人の名前を取得する必要があります。誰かがコードの例を共有できますか

4

2 に答える 2

2

招待状の送信中に、追跡するデータを追加できます。たとえば、送信したいsender_nameので、送信リクエスト関数は次のようになります。

FB.ui({
        method: 'apprequests',
        message: "has invited you to the app",
        filters:['app_non_users'],
        data: sender_name
    }, function (response) {
    });

受信者が送信されたリクエスト通知をクリックしてアプリケーションにアクセスすると、データを取得して、以下のように php でリクエストを削除できます。

if(isset($_GET['request_ids']))
   {
       $request_ids = $_GET['request_ids'];
       $request_ids = explode(",", $request_ids);
       foreach($request_ids as $request_id)
            {
                 $request_object = $facebook->api($request_id);
                 if(isset($request_object['data'])) $req_data = $request_object['data'];//you can now use the sent $req_data your way
                 $full_request_id = $request_id."_".$current_user_fbid;
                 $facebook->api("$full_request_id","DELETE");
            }
   }
于 2012-10-31T09:37:12.893 に答える
1

データベースを使用していると思います。ユーザーが友達を招待すると、送信されたリクエストのレスポンスには、response.request と response.to が含まれます。この request_id をユーザーおよびユーザーのフレンド ID (招待されたフレンド) とともに保存します。

function inviteuser(){
    FB.ui({
        method: 'apprequests',
        message: "Apllications message goes here",
        exclude_ids: [1, 2, 3],
        filters:['app_non_users'],
        data: "optional additional data you may pass for tracking"
    }, function (response) {
        if (response && response.to) {
        //callback function, will be called after user invites his friend, response object will contain list of all users invited
        //save response.to and response.request in database
        }
    });
}

ユーザーが招待を受け入れると、つまりアプリ リクエスト通知をクリックしてアプリケーション キャンバス ページにアクセスすると、Facebook は "request_ids" パラメータでカンマ区切りの ID を送信します。このリクエスト ID を取得し、データベースと比較して必要な情報を取得できます。

于 2012-10-31T05:07:32.817 に答える