在youtube API V3中进行分页

时间:2015-07-29 12:42:55

标签: youtube youtube-api youtube-data-api

我是youtube API V3的新用户现在我可以获取一些用户的视频并在我的网站上显示它们但现在当结果超过50个视频时我想为他们做一个分页让我说我的结果是240所以我现在有5页如何通过链接1,2或3发出第4页的请求 这是我的列表请求: -

https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=UUdxi8d8qRsRyUi2ERYjYb-w&key={myKey}

有一个页面令牌允许我浏览链接,但这意味着我必须使用next和prev请求 那么有没有办法直接加载第4页?

2 个答案:

答案 0 :(得分:0)

无法直接加载特定页面,您需要为每个页面调用nextPageToken的API(在您的示例中为4次)。

答案 1 :(得分:0)

我不推荐这种方法,但是为了完整起见,将其包括在内,因为它可以直接解决问题,而其他答案则可以替代。

无论播放列表或访问日期如何,Youtube似乎都使用相同的pageToken。例如,第二页的pageToken始终为CDIQAA,第三页的CGQQAA等,等等。

这些并不保证总是保持不变,但是基于早在2014年的stackoverflow帖子,它并没有长期改变,因此这是一个合理的假设。

因此,您可以像平常一样请求前五个页面,然后保留页面令牌(例如,保存在本地缓存中)。然后,只要您需要将来的第240个项目中,只需查找第5页令牌(恰好是CMgBEAA)并直接访问该页即可。

这是第9页的第1页令牌:

1 <blank>
2 CDIQAA 
3 CGQQAA
4 CJYBEAA
5 CMgBEAA
6 CPoBEAA
7 CKwCEAA
8 CN4CEAA
9 CJADEAA