RestFB:当页面的URI具有页面名称时,无法获取页面帖子

时间:2014-12-08 16:00:22

标签: java facebook uri restfb

我又来这里寻求你的帮助。 我正在构建一个简单的应用程序,它可以从我喜欢的页面获取所有评论。它工作得很好,但在某些测试中,我将HTTP状态500作为例外。

当pase的URI具有页面名称时,会出现问题。让我用两个例子来解释:

  1. 工作URI:https://www.facebook.com/pages/ULTRAS-NAPOLI/ 101174668938 ?fref = ts

  2. 工作URI:https://www.facebook.com/ FASTWEB ?fref = ts

  3. 正如您所看到的,两个URI之间的区别在于1.具有页面ID,以及2.具有页面名称!

    这是我的代码:

       public LinkedList<String> writeOnePageComments(String id){
        LinkedList<String> s = new LinkedList<String>();
    
        Connection<Post> page = fb.fetchConnection(id.trim()+"/posts", Post.class,Parameter.with("limit",999));
    
        List<Post> pagePosts = page.getData();
        List<Comment> commentList;
        Comments comments;
        for(int i=0;i<pagePosts.size();i++){
            Post p=pagePosts.get(i);
            comments=p.getComments();
            if(comments!=null){
                commentList = comments.getData();
                if(!commentList.isEmpty())
                    for(int k=0;k<commentList.size();k++){
                        String tmp = commentList.get(k).getMessage();
                        tmp = f.subEmoticons(tmp);
                        tmp = f.removeRepeatedVocals(tmp);
                        s.add(tmp);
                    }
            }
    
        }
    return s;
    

    有任何帮助吗?我疯了! :)

1 个答案:

答案 0 :(得分:3)

求助:

Connection<Post> page = fb.fetchConnection(id.trim()+"/posts", Post.class,Parameter.with("limit",999));

应改为:

    Connection<Post> page = fb.fetchConnection(id.trim()+"/feed", Post.class,Parameter.with("limit",999));

根据Facebook Graph API文档,“Feed”表示:“此页面或此页面上的其他人发布的帖子摘要(包括状态更新)和链接。”而“/ posts”仅显示帖子本页发表的内容。