2013-07-19 7 views
37

とFacebookのグラフAPIを検索するときには、JSON形式のフィールドに返すなどを含めるために使用は、検索= XXX

http://graph.facebook.com/search?q=iwatch&type=post&access_token=xxxxx 

として、私は現在の記事を検索するにはFacebookのグラフAPIの検索を使用しています数:特定の投稿についてを数えます。

7月10日以降の変更についてdevのロードマップ(https://developers.facebook.com/roadmap/)を読んだ後、summary=true paramを使用するように指示されていますが、これを検索するにはどうすればいいのでしょうか?

ロードマップのFBブログから。私たちは、 グラフAPIの「コメント」の接続で文書化されていない「数」欄を削除するコメント「グラフAPI接続から「数」を削除

。あなたは、私は様々な組み合わせを試してみましたが、例が、無サイコロで検索しました(今 「TOTAL_COUNT」と呼ばれる)のカウント

が含まれている集計フィールドをご希望の場合は、明示的に {id}/comments?summary=trueをリクエストしてください。誰かに、新しい要約=真を取得して記事を検索するための検索URL内で作業する方法に関するアドバイスをいただけますか?

答えて

8

要約は単に 'TOTAL_COUNT' フィールドで

+0

私はまたのようなカウントを取得するには、「要約= 1」を設定して、この程度FBのドキュメントを参照してください。 しかし、あなたがhttps://graph.facebook.com/PAGE_ID/feedでページフィードを取得したときのようなカウントを得る方法を知っていますか? フィードを取得しているときに同様のカウントを取得できない場合は、同様のカウントのためだけに各投稿の個別のリクエストを作成する必要があります...これが唯一の方法ですか? –

+0

はい、私はそれが唯一の方法だと信じています。または、少なくとも私が見つけた唯一の方法。 – Jon

+0

これは私のために働いた。私はAPIを複数回呼び出しなければならなかった。私は 'limit = SOME_HUGE_NUMBER'を追加して、表示された番号をページ設定/制限しないようにしましたが、それが必要かどうかはわかりません。 – Daniel

133

Couldn」 '要約' 要素があるでしょう

https://graph.facebook.com/POST_ID/likes?summary=true&access_token=XXXXXXXXXXXX

を呼び出すポストオブジェクト

の同類接続でありますドキュメントでこれを見つけることはできませんが、APIへの複数の呼び出しは必要ありません。 1つまたは複数の投稿にクエリを実行するときに要約を使用できます。 fieldsパラメーターにこれを指定します。

https://graph.facebook.com/PAGE_ID/feed?fields=comments.limit(1).summary(true),likes.limit(1).summary(true) 

これは、このような応答を返します。

{ 
    "data": [ 
    { 
     .... 
     "summary": { 
     "total_count": 56 
     } 
     ... 
    }, 
    { 
     .... 
     "summary": { 
     "total_count": 88 
     } 
     ... 
    } 
    ] 
} 

これは、コメントやお気に入りの数を取得するためにオブジェクトごとに個別のリクエストを作成するよりもはるかに高速です。

+0

多くの人に感謝しています... Uは私の時間を節約し、また心配しています。ありがとうございます – Nagaraj

+0

素晴らしい答えとページの総数を得るには https://graph.facebook.com/PAGE- ID/ – Adeem

+6

もちろん、Facebook APIのドキュメントは完全なものであり、「要約」パラメータ>の記載はありません> :(:((:(( – Brade

5

私はこのような私のAPIのクエリを作成し、それは私が1つのショットクエリフェッチすることができます:ページのカウントを取得するには

https://graph.facebook.com/PAGE_ID/feed?fields=comments.limit(25).summary(true),likes.limit(25).summary(true) 
7

あなたがfan_countフィールドを使用することができますが好きです。

search?q=xxx&fields=fan_count&type=page 
+0

あなたの答えを –

+1

あなたはfan_countフィールドを使用することができます好きなカウントを取得するには – Shush

17

また、すべての記事>コメントを得ることができます>単一の要求でを好き:

https://graph.facebook.com/<obj_id>/feed?fields=message,comments.limit(10).summary(true){message,from,likes.limit(0).summary(true)} 

ブレースがネストされた要求です。

これは、次のような結果が得られます。

{ 
    "data": [ 
     { 
     "message": "Contents of the Post" 
     "id": "123456789123456789", 
     "comments": { 
     "data": [ 
      { 
      "message": "Contents of the Comment", 
      "from": { 
       "name": "John Doe", 
       "id": "123456789" 
      }, 
      "likes": { 
       "data": [], 
       "summary": { 
        "total_count": 14, 
        "can_like": true, 
        "has_liked": false 
       } 
      }, 
     ... 
+0

ネストされた要求について知っていた方法ドキュメント内のどこでも見つけることができません – vumaasha

+3

https://developers.facebook.com/docs/graph-api/using-graph-api =>「入れ子になった」という単語を検索してください。 – Nicomak