0

アプリにアルバムの写真を表示したい。グラフAPIを使用すると、以下のように月ごとにフィルタリングしてページを表示できます。これはすばらしいことです。結果をループして、各IDの写真を取得します。何よりも、GRAPH APIは、「次の」および「前の」ページングリンクも提供します。非常に便利。

http://graph.facebook.com/[photo-album-id]/photos/?fields=id&limit=6&since=last month

しかし今、私はこれらのIDフィルターのみを2つの方法で取得したいと思います。

  1. ユーザーがタグ付けされているもののみを取得します
  2. ユーザーとその友達がタグ付けされているもののみを取得します。

グラフAPIを使用して、これを行う方法を見つけることができませんでした。FQLを介して、まだページングが残っている代替手段はありますか?

私が考えることができる最後の選択肢は、プログラムがFQLにあり、自分でページングを行うことです。

ps私は現在Javascriptでこれを行っています。

4

2 に答える 2

0

グラフエクスプローラー(https://developers.facebook.com/tools/explorer/)で少し遊んだ後、私はこの解決策を思いつきました。次のようにGraphAPIを呼び出すことができます

/me?fields=friends.limit(5).fields(photos.limit(5))

最初の制限はあなたが取得したい友達の数であり、2番目の制限はあなたが各友達から欲しい写真の数です。

データの最後には、すでに次のページのURLがあります。エクスプローラーでテストしただけですが、動作するはずです。

お役に立てば幸い、ドルク

于 2012-12-10T09:25:09.280 に答える
0

FQL次の呼び出しを使用して、特定のアルバムで現在のユーザーがタグ付けされている写真を取得できます。

select object_id, src, album_object_id from photo where pid in (select pid from photo_tag where subject=me()) and  and album_object_id=somenumber

特定のアルバムについて、ユーザーの友人がタグ付けされた写真を取得するには:

select object_id, src, album_object_id from photo where pid in (select pid from photo_tag where subject in (select uid2 FROM friend WHERE uid1 = me())) and album_object_id=somenumber

私の知る限り、これらの結果はページ付けされません。fb クエリをページ分割する方法の詳細については、Facebook 開発者ブログ: How-To: Paging with the Graph API and FQL を参照してください。

于 2012-12-10T07:48:39.687 に答える