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



我试图从以下YouTube数据API端点获取频道用户数据:通道:使用此URL的列表:

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

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

我不能创建"wrapper"访问YouTube的YouTube帐户没有:

  • 通道id、id
  • 通道名,title.

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

API返回以下数据:

▿ 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

...

我试过了:

  • 验证Web API Explorer显示相同的问题。
  • 已验证权限相同。
  • 已验证帐户已启用所有相同的功能。

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

我在许多其他问题中发现了这个问题。其他问题有助于误解和混淆,与本文无关。

当Youtube用户没有通道时,Youtube Data API返回一个不完整的响应。*

有三种状态,其中Youtube用户*可以在他的帐户直播能力:

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

默认启动状态为一个谷歌用户*是1)。谷歌用户*不自动拥有一个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. 错误- "获取通道列表失败。用户没有频道/s.">

2个元素-关键字:"error"值:1个元素2个元素-键:"message"- value: "获取通道列表失败。用户没有频道/s。…

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

    元素2个元素-关键字:"items"值: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用户。据我所知,你可以拥有一个谷歌账户(它允许你访问其他谷歌产品),而无需登录Youtube。当你登录到Youtube的第一次出现一个小缩进与用户名,这表明这实际上是一个Youtube帐户。该Youtube帐户将没有频道,并且UI显示("无频道")。当你点击"切换账户"时选项卡,你将能够实际上切换频道,如果你有多个频道。您还可以切换帐户。

编辑1:

API问题可以在这里找到。

编辑2:

Youtube Data API"如何获得帮助";

最新更新