无法添加喜欢的字段param

时间:2011-08-26 04:17:54

标签: facebook rest facebook-graph-api

根据Facebook Graph API documentationfields param充当结果掩码:

  

默认情况下,进行查询时会返回大多数对象属性。   您可以选择要返回的字段(或连接)   “fields”查询参数。

事实上,这适用于大多数领域。例如,/7354446700?fields=name,picture返回:

{
  "name": "Grooveshark", 
  "id": "7354446700", 
  "type": "page", 
  "picture": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/203560_7354446700_6819703_q.jpg"
}

但是,出于某种原因,只要将likes字段添加到fields列表,事情就会中断。例如,/7354446700?fields=name,picture,likes返回:

{
  "name": "Grooveshark", 
  "id": "7354446700", 
  "type": "page", 
  "picture": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/203560_7354446700_6819703_q.jpg", 
  "likes": {
    "data": [
    ]
  }
}

更奇怪的是,如果我省略其他两个字段(namepictures),只发送likes,我会

{
  "likes": {
    "data": [
    ]
  }
}

我发现这种额外奇怪的原因是因为这里不包括应添加到每个响应的“必填”字段(idtype)(尽管它们是< / {>包含在fields=name,picture,likes)。

似乎正在发生的事情是,field=likes参数似乎被误解为连接请求而不仅仅是字段掩码,因此通常会出现data段当你打电话给/7354446700/likes时。

这有充分的理由吗?有没有其他方法来获取likes字段而不获取整个对象?我无法想象这会是预期的行为,所以我认为这是一个错误,但我想在提交之前我先问这里。

1 个答案:

答案 0 :(得分:1)

这确实是一个错误;我已经在内部进行了检查,还有一个尚未解决的任务可以解决这个问题,这个问题已经在我们的错误跟踪器中报告给我们了。

与此同时,页面的默认返回值将包含“赞”字段,即使它无法单独检索。