如何在用户通过Google登录后获取其YouTube Handle?是否有对应API?
获取YouTube Handle的方法及API支持说明
一、Google登录后获取用户YouTube Handle的步骤
- 先通过Google OAuth授权获取用户关联的YouTube频道ID。你可以借助Google People API获取用户的关联服务信息,或者在请求YouTube相关权限后,直接从OAuth返回的用户数据里提取频道ID。
- 拿到频道ID后,有两种获取Handle的方式:
- 手动访问对应频道主页(
https://www.youtube.com/channel/[频道ID]),页面里频道名称下方会显示格式为@xxx的Handle。 - 应用内实现的话,可解析频道页HTML提取Handle,但这种方法依赖页面结构,稳定性较差。
- 手动访问对应频道主页(
二、API支持情况
YouTube Data API v3目前是支持获取Handle的,只是相关文档可能未及时更新,你可以通过以下方式调用:
- 使用
channels.list接口,指定part=brandingSettings参数,请求目标频道ID的信息。返回结果中brandingSettings.channel.handle字段就是你要找的YouTube Handle。 - 调用示例(替换括号内的参数):
GET https://www.googleapis.com/youtube/v3/channels?part=brandingSettings&id=[频道ID]&key=[你的API密钥] - 如果要获取当前登录用户的Handle,可结合OAuth令牌,将
id参数替换为mine=true,接口会返回当前授权用户的频道信息,从中提取Handle即可。
注意:部分未设置Handle的频道,该字段会返回空值。
内容的提问来源于stack exchange,提问作者devinmeta
相关产品推荐
相关产品推荐

