2017-04-18 26 views
0

私はRestFBを使ってFacebookのページから投稿を取得しています。問題は、私は最後の1ヶ月の記事だけを、そのページの最新の投稿だけにしたいということです。私のコードでは、私はすべての歴史を取得し、それは多くの時間がかかります。 どうすればいいですか?私は "タイムスタンプ"パラメータについて読んでいない。私は良い結果なしで限界パラメータを試しました。RestFBを使用しているFacebookの最新の投稿を取得する

私のコードは次のとおりです。

public static JSONArray GetPostsFromPage(String idpage) { 
    String texto, idpost; 
    Date timestamp; 
    JSONArray array = new JSONArray(); 
    JSONObject objeto; 
    Connection<Post> postFeed = fbClient.fetchConnection(idpage + "/feed", Post.class, Parameter.with("limit", 50)); 

    for (List<Post> postPage : postFeed) { 
     for (Post aPost : postPage) { 
      objeto = new JSONObject(); 
      idpost = aPost.getId(); 
      texto = aPost.getMessage(); 
      timestamp = aPost.getCreatedTime(); 

      objeto.put("id", idpost); 
      objeto.put("texto", texto); 
      objeto.put("timestamp", timestamp); 

      array.put(objeto); 
     } 
    } 
    return array; 
} 

すべてのアイデアは歓迎されるだろう。ありがとうございました。

答えて

1

私の最初の提案: はここに時間ベースの改ページをチェックしてください: https://developers.facebook.com/docs/graph-api/using-graph-api

をあなたは単にあなたにfetchConnectionコールをParameter.with("since", "<timestamp>")を追加する必要があります。

第2の提案: 保存されたタイムスタンプにループを残します。最新の投稿のTSを保存するだけで、次のポーリング反復でそのTSのループを停止します。

関連する問題