Auth2.0认证后仅能获取个人视频字幕,获取其他字幕遇403错误求助
问题
OAuth2.0认证后仅能获取自身视频的字幕,调用YouTube Captions API下载其他用户视频字幕时返回403错误,请求接口:GET https://youtube.googleapis.com/youtube/v3/captions/AUieDaYqxpKkWtl4KIZ6aCk9-F-uRvshqdX1Es9y1wHe0Z3qzJI?alt=media
错误响应
{ "error": { "code": 403, "message": "请求关联的权限不足以下载字幕轨道。请求可能未正确授权,或者视频所有者未启用该字幕的第三方贡献权限。", "errors": [ { "message": "请求关联的权限不足以下载字幕轨道。请求可能未正确授权,或者视频所有者未启用该字幕的第三方贡献权限。", "domain": "youtube.caption", "reason": "forbidden", "location": "id", "locationType": "parameter" } ] } }
解决方案
- 权限与访问规则:YouTube API明确规定,只有视频所有者、或被视频所有者授权的第三方(需开启第三方字幕贡献权限)才能下载字幕文件。普通OAuth2.0认证用户仅能访问自身上传视频的字幕资源,这是API的默认限制,和
force-ssl权限无关。 - 检查视频字幕设置:目标视频的所有者可能关闭了字幕的第三方下载权限,或者该字幕是自动生成但未开放下载。可通过网页端查看视频的字幕设置,确认是否允许下载。
- 验证令牌有效性:确保你的OAuth2.0令牌未过期,且请求头中正确携带了
Authorization: Bearer {token}。 - 合规替代方案:若无法通过API下载,对于公开视频,可使用YouTube官方提供的字幕嵌入功能(通过iframe或Player API加载字幕),而非直接下载字幕文件。注意:未经授权批量下载字幕违反YouTube服务条款,需避免此类操作。
内容的提问来源于stack exchange,提问作者one test
相关产品推荐
相关产品推荐

