如何通过Facebook查询语言(FQL)获取'me/photos'



我只想在指定的年份,比如2009年拍我的照片。

通过使用Facebook Graph API,我的照片可以通过查询/me/photos获得(c.f。https://developers.facebook.com/docs/reference/api/photo/)

但是通过这种方式,我们无法过滤图片。通过使用FQL,我们可以过滤照片。然而,用FQL得到/me/photos似乎很复杂。

有人知道FQL获取/me/photos/的确切查询吗?

photo表包含一个owner索引,您可以使用该索引提取属于某个用户的所有照片。me()函数只是使用当前用户的user_id。

SELECT object_id FROM photo WHERE owner = me()

此查询将为属于用户的每张照片返回object_id。您可以添加更多参数来提取更有用的数据:

SELECT object_id, created, src_big FROM photo WHERE owner = me()

这将为您提供object_id、创建日期以及到图像本身的大版本的链接。

你会看到类似的回复:

{
  "data": [
    {
      "object_id": "123", 
      "created": 1385923483, 
      "src_big": "https://fbcdn-sphotos-...jpg"
    }, 
    {
      "object_id": "456", 
      "created": 1384765782, 
      "src_big": "https://fbcdn-sphotos-...jpg"                            
    }, 
    {
      "object_id": "789", 
      "created": 1384144732, 
      "src_big": "https://fbcdn-sphotos-...jpg"                            
    }, 
    ...
  ]
} 

根据我的研究,查询

SELECT src_big, caption, created, like_info FROM photo WHERE object_id IN (SELECT object_id FROM photo_tag WHERE subject=me())

最适合CCD_ 8。

通过使用此功能,您可以按created时间或like_info.like_count等限制照片结果。

最新更新