Youtube API - 没有频道名称
Posted
技术标签:
【中文标题】Youtube API - 没有频道名称【英文标题】:Youtube API - no channel name 【发布时间】:2016-01-22 12:43:43 【问题描述】:我正在尝试使用 Youtube 数据 API 检索我的 Youtube 频道名称,但我得到的是空项目。我的 Youtube 帐户中有一个频道,所以它应该返回一个。
这些是我输入的查询属性 -
part:'contentDetails', forUsername: 'Seong+Lee',
从他们的交互式documentation 页面获得以下响应。
200 OK
- SHOW HEADERS -
"kind": "youtube#channelListResponse",
"etag": "\"fpJ9onbY0Rl_LqYLG6rOCJ9h9N8/C3QZ-VsykvkpW2zCm7VjGBCayqc\"",
"pageInfo":
"totalResults": 0,
"resultsPerPage": 5
,
"items": [
]
在我的应用程序中,我得到了相同的响应,所以我认为我的请求代码没有问题。为什么我无法获取频道名称?
【问题讨论】:
您的频道的链接是什么? @not_a_bot youtube.com/channel/UCwy6X3JB24VTsDFqMwdO5Jg 【参考方案1】:您可以使用您的频道 ID 检索您的 contentDetails
。
GET https://www.googleapis.com/youtube/v3/channels?part=contentDetails&id=UCwy6X3JB24VTsDFqMwdO5Jg&key=YOUR_API_KEY
您的用户名显然无效。
【讨论】:
【参考方案2】:由于您的频道似乎没有旧版自定义网址,因此您无法使用 forUsername
参数。此参数仅适用于/user/channelname
URL。在这种情况下,这意味着您必须使用您可以通过here 找到的频道 ID。
为了获得频道的显示名称,您需要 snippet
部分而不是 contentDetails。
https://www.googleapis.com/youtube/v3/channels?part=snippet&id=UCwy6X3JB24VTsDFqMwdO5Jg&key=YOUR_API_KEY
然后您将收到频道的显示名称snippet.title
kind: "youtube#channelListResponse",
etag: ""0KG1mRN7bm3nResDPKHQZpg5-do/L4uU6pmZJ1wQKdGUwnnigYpSEVo"",
pageInfo:
totalResults: 1,
resultsPerPage: 1
,
items: [
kind: "youtube#channel",
etag: ""0KG1mRN7bm3nResDPKHQZpg5-do/GKVRHf7CLp-mUGFTR_3wbc5Lq-k"",
id: "UCwy6X3JB24VTsDFqMwdO5Jg",
snippet:
title: "Seong Lee",
...
【讨论】:
如何在获取播放列表详细信息之前接收用户 ID UCwy6X3JB24VTsDFqMwdO5Jg?【参考方案3】:如果您使用 google 的 oauth2 对您的应用进行身份验证,那么您可以在您的请求中包含 mine 参数并将其设置为 true 以接收您自己的频道。查看common use cases here 了解更多信息。
另见this answer
【讨论】:
以上是关于Youtube API - 没有频道名称的主要内容,如果未能解决你的问题,请参考以下文章
如何使用他们的 API 获取 YouTube 中频道的 ID、名称和所有统计信息