首页 文章

Facebook图形API:json响应中缺少feed

提问于
浏览
5

我尝试通过Android应用程序中的图形api获取用户的订阅源 . 它通常有效,但在json响应中缺少我可以在墙上看到的一些馈送 .

我通过使用Android Facebook SDK方法调用url http://graph.facebook.com/someUserId/feed,因此应该自动提供访问令牌,但在我的情况下,它与我认为并不相关 . 然而,我的应用程序的用户通过OAuth进行身份验证 .

我已经检查了以下内容:

  • 所有用户的供稿都对所有人/公众可见(在隐私设置中设置)

  • 我的浏览器没有缓存json响应

  • 我知道分页,但这不是问题 . 问题不是我没有得到最老的饲料,而是一些饲料只是缺少 in between .

  • 我注册了一个新的Facebook用户,该用户没有连接到我想要检索墙上供稿的用户,当我打开相应的墙时,我会看到所有的Feed,正如预期的那样,因为它们都是公开给大家的 . 然而,当我打开相同的相关json url unter http://graph.facebook.com/someUserId/feed时,会丢失一些Feed .

这是问题的一个例子 - 由于我的所有帖子都是公开的,我可以直接在浏览器中调用json url来进行测试 .

我想从用户那里获得墙上的信息:http://www.facebook.com/mathias.lin

截图1:记下3个标记的帖子,全部由我自己发布

alt text

在这里json响应,正如你所看到的,第1和第3个墙贴包含在json中,但第2个帖子不包含在json中 . 为什么?

相关的json网址是:http://graph.facebook.com/mathias.lin/feed

alt text

当我向网址添加access_token时,我收到'缺失'的Feed - 但为什么呢?已发布的Feed有“每个人”的隐私设置?!

这是我在使用access_token时缺少的Feed:

{"id":"504063796_485195138796","from":{"name":"Mathias Lin","id":"504063796"},"message":"Photo test upload from Android","picture":"http:\/\/photos-e.ak.fbcdn.net\/hphotos-ak-snc6\/hs021.snc6\/165194_485195123796_504063796_6062399_1841907_s.jpg","link":"http:\/\/www.facebook.com\/photo.php?fbid=485195123796&set=a.485195118796.256450.504063796","name":"Torres Photos","icon":"http:\/\/static.ak.fbcdn.net\/rsrc.php\/yz\/r\/StEh3RhPvjk.gif","actions":[{"name":"Comment","link":"http:\/\/www.facebook.com\/504063796\/posts\/485195138796"},{"name":"Like","link":"http:\/\/www.facebook.com\/504063796\/posts\/485195138796"}],"privacy":{"description":"Everyone","value":"EVERYONE"},"type":"photo","created_time":"2011-01-06T05:10:43+0000","updated_time":"2011-01-06T09:00:23+0000","likes":6,"comments":{"data":[{"id":"504063796_485195138796_3607414","from":{"name":"Mathias Lin","id":"504063796"},"message":"Awesome, photo upload now works as well. Not so much fun working with the Facebook SDK for Android, would have expected more functionality beyond that just very very simple graph api wrapper. But need to be considered that the android sdk development was part of an internship - but since it's it's open source, it can luckily be modified. Which has to be done due to some bugs (mixing up the bundle parameters for a post, getString, getByteArray). Api documentation could be improved.","created_time":"2011-01-06T05:26:04+0000"},{"id":"504063796_485195138796_3608020","from":{"name":"Renate Hermanns","id":"628810487"},"message":"Wow
, how fast time passes by. Your daughter is nearly grown up ;-).","created_time":"2011-01-06T09:00:23+0000"}],"count":2},"attribution":"Torres"}

我已经把这个问题发布到FB开发论坛,等待回复 .

相关主题:

http://forum.developers.facebook.net/viewtopic.php?id=81365

http://forum.developers.facebook.net/viewtopic.php?id=75984

Facebook Graph API "/userid/feed" returning Blank

3 回答

  • 0

    你的方法是正确的,我已经看到了JSON,是的,它错过了第二个,我认为它是adroid的上传应用程序,请尝试检查此应用程序的应用程序设置 . 或者如果你试图检索墙FQL是一个更好的方法

    SELECT post_id, actor_id, target_id, message FROM stream WHERE source_id in (SELECT target_id FROM connection WHERE source_id=<uid> AND is_following=1) AND is_hidden = 0
    
  • 4

    我经历过这种情况,Facebook对其权限进行分类的方式有点误导,例如 Publicly available 可能听起来像 Available to everyone on Facebook ,但显然不是 .

    现在,在您的情况下,如果您已经对用户进行了身份验证,请尝试使用:

    /me/feed
    

    我想这是唯一一个URL中不需要 access_token 的情况 .

  • 0

    我遇到了类似的问题 . 但对我来说,问题与首次登录时未正确设置范围(授权应用程序)有关 . 我发布了一个类似的问题并得到了一个对我有用的答案:

    Facebook API how to get all wall items

相关问题