YouTube 数据 API 未返回某些帐户的频道数据

YouTube Data API not returning channel data for some accounts

我正在尝试从以下 YouTube 数据 API 端点获取频道用户数据: Channels: list 使用这个 URL:

https://www.googleapis.com/youtube/v3/channels?part=id%2Csnippet&mine=true.

用户数据用于桌面应用程序中的帐户识别和直播。

如果没有以下条件,我将无法创建“包装”YouTube 帐户来访问 YouTube:

问题是 YouTube API 为 一些 帐户提供了数据。我拥有三个 YouTube 帐户和四个频道,目前只有一个不可用。

APIreturns以下数据:

▿ 3 elements
  ▿ 0 : 2 elements
    - key : "kind"
    - value : youtube#channelListResponse
  ▿ 1 : 2 elements
    - key : "pageInfo"
    ▿ value : 2 elements
      ▿ 0 : 2 elements
        - key : resultsPerPage
        - value : 5
      ▿ 1 : 2 elements
        - key : totalResults
        - value : 0
  ▿ 2 : 2 elements
    - key : "etag"
    - value : afx3VqgXQBJVZZO3RVos5k1JEM0

有效的 JSON 响应如下所示:

▿ 4 elements
  ▿ 0 : 2 elements
    - key : "items"
    ▿ value : 1 element
      ▿ 0 : 4 elements
        ▿ 0 : 2 elements
          - key : etag
          - value : SOME_ETAG
        ▿ 1 : 2 elements
          - key : kind
          - value : youtube#channel
        ▿ 2 : 2 elements
          - key : id
          - value : SOME_ID
        ▿ 3 : 2 elements
          - key : snippet
          ▿ value : 5 elements
            ▿ 0 : 2 elements
              - key : localized
              ▿ value : 2 elements
                ▿ 0 : 2 elements
                  - key : title
                  - value : SOME_TITLE
                ▿ 1 : 2 elements
                  - key : description
                  - value : 
            ▿ 1 : 2 elements
              - key : title
              - value : SOME_TITLE
            ▿ 2 : 2 elements
              - key : description
              
              ...

到目前为止我尝试了什么:

这个问题是新的,几个月前一切正常,我在响应中没有发现任何错误。

我在许多其他问题中发现了这个问题。其他问题助长了误解和混淆,与此 SO post.

无关

Youtube数据APIreturns对Youtube用户没有频道的情况的不完整回应。*

Youtube 用户*在其帐户直播功能方面可以处于三种状态:

  1. 用户没有频道,无法直播
  2. 用户无法直播,因为他的频道未通过phone(短信)验证。
  3. 用户可以直播,因为他的频道已通过验证。

Google 用户* 的默认开始状态是 1)。 Google 用户* 不会自动拥有 Youtube 频道。他需要创造一个。 当开发人员使用 url 向 API 请求此用户(状态 1)的频道列表时: https://www.googleapis.com/youtube/v3/channels?part=id%2Csnippet&mine=true 他将收到错误答案:

▿ 3 elements
    ▿ 0 : 2 elements
        - key : "kind"
        - value : youtube#channelListResponse
    ▿ 1 : 2 elements
        - key : "pageInfo"
        ▿ value : 2 elements
            ▿ 0 : 2 elements
                - key : resultsPerPage
                - value : 5
            ▿ 1 : 2 elements
                - key : totalResults
                - value : 0
    ▿ 2 : 2 elements
        - key : "etag"
        - value : afx3VqgXQBJVZZO3RVos5k1JEM0

预期的答案是:

  1. 错误 - “获取频道列表失败。用户没有 channel/s。”

▿ 4个元素 ▿ 0 : 2个元素 - 键:“错误” ▿ 值:1个元素 ▿ 0 : 2个元素 - 关键信息” - 值:“获取频道列表失败。用户没有 channel/s。” ...

  1. 响应代码 200 - "items" = [] -> 只是一个空数组

    ▿ 4个元素 ▿ 0 : 2个元素 - 键:“项目” ▿ 值:0 个元素

             ...
    
         ▿ 1 : 2 elements
             - key : "kind"
             - value : youtube#channelListResponse
         ▿ 2 : 2 elements
             - key : "pageInfo"
             ▿ value : 2 elements
                 ▿ 0 : 2 elements
                     - key : resultsPerPage
                     - value : 5
                 ▿ 1 : 2 elements
                     - key : totalResults
                     - value : 1
         ▿ 3 : 2 elements
             - key : "etag"
             - value : 6mudnjdaMbyKk1XIwl4DvHzx5pc
    

*Google 和 Youtube 在其文档中不使用 Google 用户或 Youtube 用户。 据我了解,您可以拥有一个 Google 帐户(允许您访问其他 Google 产品)而无需登录 Youtube。当您第一次登录 Youtube 时,会出现一个带有用户名的小缩进,表明这实际上是一个 Youtube 帐户。该 Youtube 帐户将没有频道和 UI 状态(“无频道”)。当您单击“切换帐户”选项卡时,如果您有多个频道,您将能够实际切换频道。您还可以切换帐户。

编辑 1:

可以找到 API 问题 here

编辑 2:

Youtube 数据API“如何获得帮助”页面问题可以找到here