我正在尝试制作频道列表,制作音乐频道的视频播放列表,我不拥有这里的频道https://www.youtube.com/channel/UC-9-kyTW8ZkZNDHQJ6FgpwQ/featured,我想要的是从我不拥有的频道中检索数据。
当我这样做的时候,我以为我成功了:https://www.googleapis.com/youtube/v3/channels?id=UC-9-kyTW8ZkZNDHQJ6fpwQ&key=AIzaSyCKhEoBd9nZsMAC77NKQqf403mXnXTz35s&part=代码段,contentDetails
但当我试图把视频放在我的html上时,什么都没有显示,这是完整的代码:
$(document).ready(function() {
$.get (
"https://www.googleapis.com/youtube/v3/channels?id=UC-9-kyTW8ZkZNDHQJ6FgpwQ&key=AIzaSyCKhEoBd9nZsMAC77NKQqf403mXnXTz35s&part=snippet,contentDetails",
function(data) {
$.each(data.items, function(i,item) {
console.log(item);
pid = item.contentDetails.relatedPlaylists.uploads;
getVids(pid);
})
}
);
function getVids(pid) {
$.get(
"https://www.googleapis.com/youtube/v3/playlistItems", {
part:'snippet',
maxResults: 5,
playlistId: pid,
key: 'AIzaSyCKhEoBd9nZsMAC77NKQqf403mXnXTz35s'
},
function(data) {
var output;
$.each(data.items, function(i,item) {
console.log(item);
videTitle = item.snippet.title;
output = '<li>'+vidsTitle+'</li>'
$('#results').append(output);
})
}
)
}
});
我没有收到错误,但标题没有显示在HTML上
是,您可以使用参数onBehalfOfContentOwner
,此参数只能在经过适当授权的请求中使用。
onBehalfOfContentOwner
参数指示请求的授权凭证标识代表参数值中指定的内容所有者行事的YouTube CMS用户。此参数适用于拥有和管理许多不同YouTube频道的YouTube内容合作伙伴。它允许内容所有者进行一次身份验证并访问其所有视频和频道数据,而不必为每个单独的频道提供身份验证凭据。用户进行身份验证的CMS帐户必须链接到指定的YouTube内容所有者。
HTTP请求
GET https://www.googleapis.com/youtube/v3/channels
如果成功,此方法将返回具有以下结构的响应体:
{
"kind": "youtube#channelListResponse",
"etag": etag,
"nextPageToken": string,
"prevPageToken": string,
"pageInfo": {
"totalResults": integer,
"resultsPerPage": integer
},
"items": [
channel Resource
]
}
该文档显示了具有不同支持编程语言的示例代码:https://developers.google.com/youtube/v3/docs/videos/list#examples