1

尝试使用以下查询通过 fql 检索 facebook 事件。我无法获得除“id”以外的场地详细信息。

fql?q=SELECT name,description,pic_small,pic_big,eid,venue,location from event WHERE eid in (SELECT eid FROM event_member WHERE uid = me())

输出 :

{
  "data": [
    {
      "name": "HappyHour",
      "description": "Let's have fun !!!",
      "pic_small": "http://profile.ak.fbcdn.net/static-ak/rsrc.php/v2/yy/r/XcB-JGXohjk.png",
      "pic_big": "http://profile.ak.fbcdn.net/static-ak/rsrc.php/v2/yn/r/5uwzdFmIMKQ.png",
      "eid": ......,
      "venue": {
        "id": .......
      },
      "location": "The Crab Pot Seattle"
    }
  ]
}

graph api doc说“正在举办被查询事件的地点。包含以下一个或多个字段:街道、城市、州、邮编、国家、纬度和经度。” 但除了场地ID,我没有看到任何这些。

我是否必须再次请求图形 API 才能获取场地位置详细信息?有没有更好的方法在一个查询本身中获取位置详细信息?

4

1 回答 1

6

您可以使用此 FQL Multiquery获取事件的位置。

这将获得您的活动和有关其场地的信息。您必须自己编写一个脚本才能将它们组合成可用的东西。

fql?q={
 "event_info":
    "SELECT name,description, pic_small,pic_big, eid,venue,location 
      FROM event WHERE eid IN 
         (SELECT eid FROM event_member WHERE uid = me())", 
  "event_venue":
     "SELECT name, username, page_id, location 
        FROM page WHERE page_id IN 
          (SELECT venue.id FROM #event_info)"
 }

Facebook 在 4 月的某个时候更改了事件的默认编码。过去总是返回所有位置数据。从那时起,只id返回了该位置的 。

于 2012-06-05T18:27:10.140 回答