1

我正在努力从这样的 API 调用中获取 Facebook 帖子的链接:

https://graph.facebook.com/v2.2/807247516000935/posts?access_token={TOKEN}

对于大多数帖子,我可以创建链接"www.facebook.com/" + item.getId(),但有时这些链接不起作用。是否有规则如何创建始终有效的链接?我觉得大多数不起作用的链接都是帖子,其中包含指向 Facebook 帖子或页面的链接。

谢谢你的帮助!

4

1 回答 1

2

这里涉及的案例:

  1. 使用链接

    如果您使用链接 ( www.facebook.com/{POST_ID}) 查看帖子,则只有在隐私设置允许当前用户查看帖子时,您才能看到帖子。例如:

    • 如果隐私设置设置为PUBLIC,任何人都可以看到带有该链接的帖子
    • 如果隐私设置设置为ONLY ME,则没有人可以看到带有该链接的帖子等。
  2. 使用图形 API

    除非帖子未被删除,否则您可以使用 ( graph.facebook.com/{POST_ID}?access_token={ACCESS_TOKEN}) 查询帖子详细信息,无论隐私设置如何。

注意:如果帖子被用户删除,显然您不会以任何方式获得该帖子的任何详细信息


- - 编辑 - -

区分“照片”和“状态”/“链接”

当我们希望发布链接或状态消息时,Graph API 将其视为提要\POST /feed用于发布它。

并且,如果我们希望发布照片,\POST /photos则使用。

但是,如果我们想使用这些帖子\GET /<ID>/feed,它会为我们提供所有时间线帖子,无论是链接状态还是照片

现在,如果您仔细注意到,Feed 结果有一个 key type,它告诉您它是链接、状态还是照片。此外,如果它是一张照片,API 会为您提供另一个参数:object_id它应该用于获取该照片的链接。

所以-

if type="photo"
   link="http://facebook.com/{object_id}"
else
   link="http://facebook.com/{id}"
于 2015-03-10T09:00:29.067 回答