如何通过YouTube Data API获取无关联频道授权用户的已保存播放列表?
解决无关联频道用户的播放列表获取问题
错误原因
调用playlists?mine=true返回404,是因为该参数要求用户拥有已关联的YouTube频道——无频道用户的播放列表不属于任何公开/关联频道,API无法通过该参数定位资源。
可行解决方案
1. 获取隐藏默认频道ID(多数场景适用)
即使用户没有创建公开频道,多数Google账号会自动生成一个隐藏的默认频道。先调用接口获取该频道ID:
GET https://www.googleapis.com/youtube/v3/channels?part=id&mine=true
如果返回有效频道ID,再用该ID调用playlists接口获取所有关联播放列表:
GET https://www.googleapis.com/youtube/v3/playlists?part=snippet&channelId=【获取到的频道ID】&maxResults=50
2. 获取系统默认播放列表
若上述方法失败,用户仅能访问系统默认列表(如「稍后观看」),可尝试:
- 直接调用
playlistItems接口获取「稍后观看」列表内容(部分无频道用户可通过通用标识LL访问):GET https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=LL&maxResults=50 - 对于用户收藏的他人播放列表,可通过
subscriptions接口筛选resourceKind="youtube#playlist"类型获取:GET https://www.googleapis.com/youtube/v3/subscriptions?part=snippet&mine=true&resourceKind=youtube#playlist&maxResults=50
注意事项
- 无关联频道的用户无法创建自定义播放列表,仅能使用系统默认列表或收藏他人的播放列表。
- 所有API调用需确保OAuth 2.0授权时请求了
https://www.googleapis.com/auth/youtube.readonly或更高权限的Scope。
内容的提问来源于stack exchange,提问作者Harshit Saini
相关产品推荐
相关产品推荐

