【问题标题】:Get Facebook profile pictures album获取 Facebook 个人资料图片相册
【发布时间】:2012-03-02 12:33:32
【问题描述】:

我正在尝试在 facebook 中检索用户的所有个人资料图片。到目前为止,我发现我必须在“我/专辑”中寻找,而我想要的专辑是type: 'profile'中唯一的一张。

我还发现我无法过滤type。所以在我看来,唯一的方法是检索所有专辑,然后搜索我想要的专辑。但是假设我的用户有很多专辑,而来自 facebook 的第一个响应不包含我想要的专辑。然后我必须发出另一个请求以获取下一页。

我的问题是:

  • 真的没有办法过滤type吗?
  • 我能否假设个人资料图片相册的“位置”(按页面)?

目前我们正在检索所有(最多 300 张)专辑并进行处理,但这需要太多时间。因此问题,我们需要优化这部分。值得一提的是,它是一款 Rails 3 应用,由 Koala 处理 Facebook 交互。

【问题讨论】:

  • facebool 是面向程序员的 Facebook 吗? :) 我已经编辑了标题。
  • 糟糕。对不起,谢谢。 :)

标签: facebook facebook-graph-api


【解决方案1】:

你可以使用

https://graph.facebook.com/me/fql?q=select+aid+from+album+where+owner=me()+and+type="profile"&access_token=...

更新

这将只直接返回您的个人资料图片:

https://graph.facebook.com/me/fql?q=select+pid,src_small+from+photo+where+aid+in(select+aid+from+album+where+owner=me()+and+type="profile")&access_token=...

【讨论】:

  • 谢谢,它有效。我不知道为什么我之前尝试过使用WHERE type='profile' 时出现错误..
  • 如果进行其他图形 API 调用,您可能需要 object_id 而不是“aid”:SELECT object_id FROM album WHERE owner=me() and type="profile"
  • 由于某种原因,FQL 对我不起作用 - 我一直在使用图形资源管理器进行尝试。你有机会重新格式化它吗?
  • 2.0 之后的版本将不支持 FQL:developers.facebook.com/docs/reference/fql
  • 自 2016 年 8 月 8 日起,FQL 将不再有效。我们必须使用 Graph API。
【解决方案2】:

不,没有办法专门在 Graph API 中检索个人资料照片相册;但是您会很容易地获得当前的个人资料图片,因为它会在用户的基本信息中返回。

为什么不在一次调用 (/me/albums?fields=name&limit=500) 中检索所有专辑名称并在代码中循环访问它们?真的不会花那么长时间吧?

{edit} Alexander 的解决方案也应该可以,不过我还没有检查过

【讨论】:

  • 循环可能非常非常慢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-11-20
  • 1970-01-01
  • 2014-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多