Facebook Connectグラフステータスオブジェクトには、25でキャップされたコメントがあります

StackOverflow https://stackoverflow.com/questions/4744720

質問

特定のグラフステータスアップデートオブジェクトがどれだけコメントしていても、コメントを25に制限する理由を知っている人はいますか?オブジェクトの実際のコメントの「サンプル」だけを返すと感じています。 FQL APIを使用せずにすべてを取得するように強制するにはどうすればよいですか?

役に立ちましたか?

解決

これは、グラフAPIの動作方法です。 APIドキュメントをご覧ください。一度に25を取得し、それらをループする必要があります。次のグラフAPI呼び出しのパラメーターとして、バッチの最後のコメントのタイムスタンプ(created_time)を使用するか、 offset パラメーター。それが私がやっていることです。私は使用していくつかの厄介な状態にぶつかりました created_time. 。これは私のC#テストアプリの例です。への参照を無視します PostComment 私が引いているデータを保持するために作成したデータ構造にすぎないオブジェクト。魔法(および私が参照しているプロセス)は、グラフAPI呼び出しに渡されるパラメーターにあります。

parameters.Add("offset", numPostComments);
parameters.Add("limit", 25);

「制限」を25以下に設定できると確信しています。

do
{
    foreach (var comment in comments.data)
        {
            numPostComments++;
            PostComment pc = new PostComment();
            pc.Post_ID = p.Id;
            pc.Facebook_ID = comment.id;
            pc.From = comment.from.name;
            if (comment.likes != null)
                pc.Likes = (int)comment.likes;
            pc.CommentDate = DateTime.Parse(comment.created_time);
            pc.CommentText = comment.message;
            p.Comments.Add(pc);
        }
        // Create new Parameters object for call to API
        Dictionary<string, object> parameters = new Dictionary<string, object>();
        parameters.Add("offset", numPostComments);
        parameters.Add("limit", 25);

        // Call the API to get the next block of 25
        comments = client.Get(string.Format("{0}/comments", p.Facebook_ID), parameters);
} while (comments.data.Count > 0);

他のヒント

このリンクがあなたに役立つことを願っています

iOS SDKを使用してFacebook JSON応答の次のページに移動する方法は?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top