1

Facebook バッチ リクエストで fql とグラフ API を一緒に使用するにはどうすればよいですか?グラフ API を使用して自分に関するプロファイル情報を取得し、 fql を使用して友人の過去 30 日間の投稿を取得したいと考えています。

4

1 に答える 1

1

私は同じ問題を抱えていました。質問に答えるのは非常に遅いですが、誰かを助けるでしょう. だからこそ、この質問に答えます。

//$current_user=Facebook ID

 $query1="SELECT uid, name FROM user WHERE is_app_user=1 AND uid IN (SELECT uid2 FROM friend WHERE uid1 = $current_user)";
 $query2="SELECT uid, name, work_history FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = $current_user )";
 $query3="SELECT uid, name, work, education FROM user WHERE uid = $current_user";
 $queries = array(
           array('method'=>'GET', 'relative_url'=>'method/fql.query?query='.str_replace(' ','+',$query1)),
           array('method'=>'GET', 'relative_url'=>'method/fql.query?query='.str_replace(' ','+',$query2)),
           array('method'=>'GET', 'relative_url'=>'method/fql.query?query='.str_replace(' ','+',$query3))
            );

            $objs = $facebook->api('/?batch='.json_encode($queries), 'POST');

$objs は、3 つのクエリの結果全体の json 配列を取得します。

そして、それは時間を大幅に節約しています。この 3 つのクエリは、個別に合計 9 秒かかります。マルチクエリでは7秒かかります。また、バッチ リクエストでは 3.6 秒かかります。

于 2012-03-14T06:08:11.863 に答える