YouTube API未检索使用YT音乐上载的播放列表项目



我刚刚创建了一个YouTube音乐播放列表,并在该播放列表中添加了一首我上传到YouTube音乐的歌曲。现在,我正在使用YouTube API,使用完全相同的用户登录以获得正确的oAuth令牌。当我为我的用户检索播放列表列表时,我可以看到这个播放列表(里面有很多元素(。

但当我试图检索这个播放列表中的项目时,我所能看到的只是我的视频标题";私人视频";以及描述";这个视频是私人的";。所以,是的,这是一个私人视频,因为我自己上传了,但至少应该得到正确的信息!就像我之前上传的视频/歌曲的标题一样。

知道吗?谢谢

编辑:是的,我使用的是用mine=true查询的PlaylistItems.list API端点。下面是回应:

stdClass Object
(
[kind] => youtube#playlistItemListResponse
[etag] => sAQNugs9wcKG_EI3f71MecqShMo
[items] => Array
(
[0] => stdClass Object
(
[kind] => youtube#playlistItem
[etag] => vL-NtUyJLqmlHMnPNX-ldbXRzhs
[id] => UExGU1NIZU5WbWZUQUQyTDc0VlJxUm5meGZwN3dNZTJ2by41NkI0NEY2RDEwNTU3Q0M2
[snippet] => stdClass Object
(
[publishedAt] => 2020-08-14T08:55:20Z
[channelId] => XXXXX
[title] => Private video
[description] => This video is private.
[thumbnails] => stdClass Object
(
)
[channelTitle] => XXXXX
[playlistId] => XXXXX
[position] => 0
[resourceId] => stdClass Object
(
[kind] => youtube#video
[videoId] => XXXXX
)
)
)
)
[pageInfo] => stdClass Object
(
[totalResults] => 1
[resultsPerPage] => 50
)
)

正如你所看到的,没有关于视频的信息。但这是一首我自己用YouTube音乐上传按钮上传的歌曲。是的,我使用的是完全相同的用户,所以访问令牌是正确的。

如果我在音乐上打开这个播放列表,youtube.com会显示这首歌,而在youtube.com上打开则不会显示任何内容(即使连接到相同的用户/个人资料(。。。

复制步骤非常简单:

  • 访问music.youtube.com
  • 从设备上传歌曲
  • 将这首歌添加到播放列表
  • 尝试使用YouTube API V3检索此播放列表的播放列表项目

谢谢!

(免责声明:这不是一个实际的答案,但更像是关于OP问题的猜测。(

我可以确认上传一个(公开的,没有版权问题(MP3到我的频道(我在这里不透露(,并观察到与OP相同的结果。

以下是我通过对PlaylistItems.listAPI端点的简单查询获得的内容(下面的省略号点是匿名的某些信息(:

{
"kind": "youtube#playlistItemListResponse",
"etag": "...",
"items": [
{
"kind": "youtube#playlistItem",
"etag": "...",
"id": "...",
"snippet": {
"publishedAt": "2020-08-15T14:11:45Z",
"channelId": "...",
"title": "Private video",
"description": "This video is private.",
"thumbnails": {
},
"channelTitle": "...",
"playlistId": "...",
"position": 0,
"resourceId": {
"kind": "youtube#video",
"videoId": "..."
}
},
"contentDetails": {
"videoId": "..."
},
"status": {
"privacyStatus": "private"
}
}
],
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 50
}
}

我推测这与API将新创建的播放列表项记录为私有(注意privacyStatusprivate(这一事实有关,即使在该项和播放列表本身是公共的情况下也是如此(就像我的情况一样(。

在我看来,所展示的行为实际上是API的一个缺陷。

让我们拭目以待,看看谷歌的支持对此有何看法。

最新更新