我正在尝试使用 Facebook Graph API 从 Facebook 事件中获取所有照片和视频。
目前我正在使用/{event-id}/feed
端点,在这里描述https://developers.facebook.com/docs/graph-api/reference/v2.6/event/feed
通过指定我想要的字段,我可以从这个端点获得几乎所有我需要的东西,但是我无法以完整分辨率获取视频的 URL。我可以通过另一个 API 调用轻松获取它们,但如果可能的话,我想避免对所有视频进行另一个 API 调用。
请注意,/{event-id}/feed
端点返回一个 数组Post objects
,这是我使用fields
查询参数查询的内容。
https://developers.facebook.com/docs/graph-api/reference/v2.6/post
/{event-id}/feed
这是我在调用端点时指定的字段
https://graph.facebook.com/v2.6/{event-id}/feed?fields=attachments,id,created_time,caption,from,name,message,message_tags,source,type,status_type,properties,object_id,picture&access_token={access-token}
该attachments
字段为我提供了高分辨率视频的图像 URL 和视频本身的 ID。/{video-id}
这意味着我需要进行额外的 API 调用才能使用端点获取高分辨率的视频 URL 。
"attachments": {
"data": [
{
"media": {
"image": {
"height": 405,
"src": "https://scontent.xx.fbcdn.net/v/t15.0-10/s720x720/13433040_10154318390596912_1315696369_n.jpg?oh=46987fa671df2deca3ce935a68e1ff30&oe=58008D60",
"width": 720
}
},
"target": {
"id": "10154318389716912",
"url": "https://www.facebook.com/{username-removed}/videos/10154318389716912/"
},
"type": "video_autoplay",
"url": "https://www.facebook.com/{username-removed}/videos/10154318389716912/"
}
]
}
该source
字段为我提供了低分辨率视频的链接。
"source": "https://video.xx.fbcdn.net/v/t42.1790-2/13543016_152852391800500_1248221173_n.mp4?efg=eyJybHIiOjMxMywicmxhIjo1MTIsInZlbmNvZGVfdGFnIjoic3ZlX3NkIn0\u00253D&rl=313&vabr=174&oh=f0f42856741b81030ea529fe89f80834&oe=5771B45B"
该object_id
字段为我提供了视频 ID。
该properties
字段给了我视频的长度。
所以我运气不好。我想知道是否可以进行一些嵌套调用来为我提供高分辨率视频的 URL,或者我是否可以使用返回 302 重定向到视频的视频 ID 调用某个端点。我可以修改源 URL 的参数吗?
任何帮助深表感谢。谢谢!