Facebook APIは最大25のイベントのみを返しますか?
-
13-10-2019 - |
質問
私は新しいiframeアプリをテストしています、
グラフAPIを使用して、ユーザーのすべてのイベントを取得しようとしています。
$tempevent = $facebook->api('/me/events', 'get', array("fields"=>"id, name, start_time"));
したがって、25のイベントのみを返します。最も遠いイベント。
何か案は?
JS-versionをチェックアウトしました。同じ結果。
FB.api('/me/events', function(response) {
console.log("event id: " + response.data[0].id); //k
console.log("event id: " + response.data[24].id); //k
console.log("event id: " + response.data[25].id); //not k
});
解決
FQLを使用してください:
$tempevent = $this->facebook->api(array(
'method' => 'fql.query',
'query' => 'SELECT eid, name, start_time FROM event WHERE eid IN (SELECT eid FROM event_member WHERE uid = me())'
));
説明:
ここでは、すべてのイベントを取得しています event
テーブル場所 イベントID (eid
) は IN
event_member
テーブルでユーザー me()
彼がそうであるかどうかにリンクされています attending
, unsure
, declined
, 、 また not_replied
.
他のヒント
次のURLにアクセスしようとすることをお勧めします https://graph.facebook.com/me/events?access_token=YOUR_ACCESS_TOKEN
. 。下へスクロール。 FacebookがPaginatedの結果を返していることがわかります。の横に data
PARAM(SDKによって返されます)あなたは別のものを持っています paging
パラメーション。これには、呼ばれるより多くの結果へのリンクが含まれています next
と previous
. 。それらを使用して、より多くのイベントを取得します。
また、ページごとにさらに多くのイベントを取得する場合は、 limit
Access_Tokenの間でパラマン。例えば: https://graph.facebook.com/me/events?access_token=YOUR_ACCESS_TOKEN&limit=50
.
幸運を。
所属していません StackOverflow