You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用YouTube Data API v3时遭遇Google OAuth 400错误及令牌访问问题

问题描述

调试YouTube Data API v3时,将官方Python 2上传代码适配到Python 3(替换apiclient为googleapiclient),配置正确的client_secrets.json后执行脚本:

python upload_video.py --file="/tmp/test_video_file.flv"
                       --title="Summer vacation in California"
                       --description="Had fun surfing in Santa Cruz"
                       --keywords="surfing,Santa Cruz"
                       --category="22"
                       --privacyStatus="private"

完成浏览器登录授权后,终端返回错误:Authentication has failed: Invalid response: 400.。调整OAuth代码为:

flow = InstalledAppFlow.from_client_secrets_file("client_secrets.json", scopes=["openid", "https://www.googleapis.com/auth/youtube.upload"])
credentials = flow.run_local_server()
service = build('calendar', 'v3', credentials=credentials)

运行时又出现flow.run_local_server()无法访问令牌的错误。已尝试更换设备、新建Google应用,问题仍未解决。

解决方案
  • 修正API服务构建错误
    你调整后的代码错误构建了Calendar API服务,而非YouTube Data API,这会导致授权凭据与服务需求不匹配。正确代码:

    flow = InstalledAppFlow.from_client_secrets_file("client_secrets.json", scopes=["https://www.googleapis.com/auth/youtube.upload"])
    credentials = flow.run_local_server()
    service = build('youtube', 'v3', credentials=credentials)
    
  • 检查Client Secrets配置

    • 确保client_secrets.json由Desktop app类型的OAuth客户端ID生成,而非Web应用或其他类型。文件中应包含installed字段,而非web字段。
    • 确认Google Cloud Console中,该客户端ID的重定向URI包含http://localhost:8080/(或你自定义的端口)。
  • 处理令牌访问问题

    • 指定未被占用的端口运行本地服务器:
      credentials = flow.run_local_server(port=8081)
      
    • 清除旧凭据缓存:删除用户目录下的.credentials文件夹(Linux/macOS为~/.credentials,Windows为C:\Users\<你的用户名>\.credentials),重新执行授权流程。
    • 检查本地防火墙是否允许本地端口的入站请求,避免回调被拦截。
  • 验证基础配置

    • 确认Google Cloud Console中已启用YouTube Data API v3,未启用会导致授权后无法正常调用API。
    • 确保用于授权的Google账号无上传限制(新账号可能存在初始限制),且具备YouTube频道权限。

内容的提问来源于stack exchange,提问作者murjo06

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 18:22:49