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

通过YouTube V3 API OAuth获取用户登录邮箱的技术问询

获取YouTube OAuth2登录用户的邮箱

首先得明确:YouTube Data API的Channel接口(v3)确实不会返回用户的个人邮箱,因为邮箱属于用户的私密个人身份信息,和频道运营信息是分离的。要拿到登录用户的邮箱,你需要借助Google的另外两个工具:

方法一:使用Google People API

这是获取用户个人身份信息的标准方式,步骤很清晰:

  1. 启用People API:在你的Google Cloud Console项目里,找到API库,搜索并启用「People API」。
  2. 添加授权Scope:在OAuth2授权流程中,必须请求包含邮箱权限的Scope,推荐用https://www.googleapis.com/auth/userinfo.email——这个Scope只请求邮箱权限,权限范围最小化,用户更容易同意授权。
  3. 调用API接口:拿到有效访问令牌(Access Token)后,发起GET请求到:
    https://people.googleapis.com/v1/people/me?personFields=emailAddresses
    
    响应结果里会列出用户的所有邮箱地址,其中标记primary: true的那一项就是用户的主邮箱。示例响应片段:
    {
      "emailAddresses": [
        {
          "value": "user@example.com",
          "primary": true,
          "type": "home"
        }
      ]
    }
    

方法二:使用OAuth2 Userinfo端点(更轻量)

如果你不想额外启用People API,这个方法更便捷,不需要在Cloud Console里配置任何额外API:

  1. 同样需要邮箱Scope:授权时必须包含https://www.googleapis.com/auth/userinfo.email这个Scope,否则拿不到邮箱数据。
  2. 调用Userinfo接口:用你的Access Token发起GET请求到:
    https://www.googleapis.com/oauth2/v3/userinfo
    
    响应结果会直接返回用户的邮箱(以及一些基础身份信息),示例响应:
    {
      "sub": "1234567890",
      "name": "John Doe",
      "email": "user@example.com",
      "email_verified": true,
      "picture": "https://example.com/photo.jpg"
    }
    

关键注意事项

  • 权限是核心前提:如果你的应用之前授权时没请求邮箱相关Scope,用户需要重新完成授权流程,否则接口会返回权限不足的错误。
  • 隐私合规不能忘:邮箱属于敏感信息,一定要遵守Google开发者政策和用户隐私协议,只能用于和应用功能直接相关的场景,绝对不能随意泄露或滥用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 06:17:32