2015-10-19 54 views
2

我想閱讀使用facebook4j庫的帖子的facebook評論。它只返回帖子,但不返回該帖子的評論。即使在任何帖子中有更多評論,它總是回覆空白。任何人都可以引導我以正確的方式從特定的帖子獲取所有評論嗎?無法閱讀使用facebook4j的Facebook評論

import facebook4j.Comment; 
import facebook4j.Facebook; 
import facebook4j.FacebookException; 
import facebook4j.FacebookFactory; 
import facebook4j.PagableList; 
import facebook4j.Post; 
import facebook4j.Reading; 
import facebook4j.ResponseList; 
import facebook4j.auth.AccessToken; 

public class PostsFromPageExtractor { 

    /** 
    * A simple Facebook4J client which 
    * illustrates how to access group feeds/posts/comments. 
    * 
    * @param args 
    * @throws FacebookException 
    */ 
    public static void main(String[] args) throws FacebookException { 

     // Generate facebook instance. 
     Facebook facebook = new FacebookFactory().getInstance(); 
     // Use default values for oauth app id. 
     facebook.setOAuthAppId("", ""); 
     // Get an access token from: 
     // https://developers.facebook.com/tools/explorer 
     // Copy and paste it below. 
     String accessTokenString = "PASTE_YOUR_ACCESS_TOKEN_HERE"; 
     AccessToken at = new AccessToken(accessTokenString); 
     // Set access token. 
     facebook.setOAuthAccessToken(at); 

     // We're done. 
     // Access group feeds. 
     // You can get the group ID from: 
     // https://developers.facebook.com/tools/explorer 

     // Set limit to 25 feeds. 
     ResponseList<Post> feeds = facebook.getFeed("187446750783",new Reading().limit(25)); 

     // For all 25 feeds... 
     for (int i = 0; i < feeds.size(); i++) { 
      // Get post. 
      Post post = feeds.get(i); 
      // Get (string) message. 
      String message = post.getMessage(); 
      // Print out the message. 
      System.out.println(message); 

      // Get more stuff... 
      PagableList<Comment> comments = post.getComments(); 
      String date = post.getCreatedTime().toString(); 
      String name = post.getFrom().getName(); 
      String id = post.getId(); 
     } 
    } 
} 

String name = "pagename"; 
ResponseList<Post> feeds = facebook.getFeed(name, new Reading().limit(250)); 
System.out.println(feeds.size()); 
+1

我也遇到過這種錯誤..你能夠得到與獲得的object_id的數據? –

+0

呀。我可以得到一個帖子。但不包含任何評論。原因是什麼? –

+1

我們在同一條船上! –

回答

3

我認爲版本2.4,Facebook現在要求您指定您在發出獲取請求時感興趣的字段。如果您不指定這些字段,則僅返回帖子。評論是其中的一個領域。

要speficy領域你會使用Reading對象,就像你在指定的項目數返回到:

// Specify all fields of interest like description, created_time, from, etc. 
final Reading reading = new Reading().limit(25).fields("comments"); 
final ResponseList<Post> feeds = facebook.getFeed("187446750783", reading); 

其餘部分應該是相同的。

+0

非常感謝。它符合你的建議。 Maxxx。 (y) –

+0

如何在Android中使用facebook4j檢索針對特定帖子的評論和喜歡的所有總數。我知道,使用Graph API,你可以使用'likes.summary(true)'和'comments.summary(true)'。但是,如何使用'Reading'對象和''''''閱讀''來檢索這些內容?任何幫助將是非常可觀的。謝謝 – YuDroid

+0

@Kiemensi Hoe我可以讀回覆評論使用facebook4j –