咨询:是否存在可获取已订阅频道列表的YouTube API?
获取已订阅YouTube频道的API方案
当然有对应的API可以实现这个需求!你要找的就是YouTube Data API v3里的subscriptions.list接口,它完全对应youtube.com/feed/channels页面展示的你已订阅的频道列表。
核心用法说明
你之前查到的“获取订阅我的频道”的接口其实是同一个subscriptions.list,只是参数设置不同:
- 要获取你自己订阅的频道,关键参数是把
mine设为true,这个参数会告诉API返回当前授权用户的订阅列表 - 必须指定
part参数,推荐用snippet,contentDetails,这样能拿到频道名称、头像、频道ID等核心信息 - 用
maxResults控制每页返回数量(最多50条),如果订阅数超过50,接口会返回nextPageToken,把它作为pageToken参数传入下一次请求,就能分页获取全部订阅
权限要求
因为要访问用户的私人订阅数据,你需要请求以下权限之一:
https://www.googleapis.com/auth/youtube.readonly(只读权限,足够满足需求)https://www.googleapis.com/auth/youtube(全权限,如果你还有其他操作需求)
简单请求示例(curl)
curl "https://www.googleapis.com/youtube/v3/subscriptions?part=snippet,contentDetails&mine=true&maxResults=50&key=你的API密钥" \ -H "Authorization: Bearer 你的用户授权令牌"
注意:这里需要同时提供API密钥(来自你的Google Cloud项目)和用户授权令牌(通过OAuth 2.0流程获取),缺一不可。
额外提示
- 如果你的订阅中有设置为不公开的频道,这个接口也能正常返回,因为是你自己授权访问的私人数据
- 确保你的Google Cloud项目已经启用了YouTube Data API v3,否则会返回权限错误
内容的提问来源于stack exchange,提问作者MarioGotti
相关产品推荐
相关产品推荐

