我想根据其URL获取Facebook对象的ID和类型。
我的目标是确定某个网址是否为Facebook活动(例如https://www.facebook.com/events/258629027581347)。
因此,如果我拥有该对象的object-id,我可以执行以下FQL查询,并知道如果我得到结果,则该对象是一个事件:
select eid from event where eid = 258629027581347
问题是只根据URL获取object-id。我不想要从URL解析id,因为无法保证URL的格式在将来保持不变。我想通过Facebook的API之一找到一种方法。
在搜索了一段时间后,我找到了以下有关如何执行此操作的建议,但遗憾的是,这些建议都不起作用:
来自object_url
表的FQL查询 - 查询不会产生任何结果:
SELECT url, id, type, site FROM object_url WHERE url = "https://www.facebook.com/events/258629027581347"
使用图表api:
https://graph.facebook.com/https://www.facebook.com/events/258629027581347
这将返回仅包含URL的JSON对象 - 无id。
将图表api与?ids=
一起使用,如下所示:
https://graph.facebook.com/?ids=https://www.facebook.com/events/258629027581347
这将返回以下JSON,也没有id:
{
"https://www.facebook.com/events/258629027581347": {
"id": "https://www.facebook.com/events/258629027581347",
"metadata": {
"connections": {
"comments": "https://graph.facebook.com/https://www.facebook.com/events/258629027581347/comments?access_token=AAACEdEose0cBADzSuuyJWohIwkXuvQGJUsIlSJz04J4nzKqqQXTvGiPXf4YDBPuh0rdyXgSWnWcJpN3X3GaATVLjG6UmZBiHKmcxCWwZDZD"
},
"type": "link_stat"
}
}
}
我在这里缺少什么?
谢谢!
答案 0 :(得分:0)
据我所知,目前还没有一种API方法可以获取Facebook网址并告诉您它是什么。解决这个问题的唯一方法是解析URL并查找最后一个元素并将其传递给https://graph.facebook.com/258629027581347?metadata=1&access_token=XXXX
这是一个崇高的目标,你正试图建立一个面向未来的Facebook应用程序,但我认为这不是一个可能性。 Facebook平台仍在不断发展。 api方法保持不变于url struture的保证较少。