我目前正在努力建立一个网站,上传某些频道的特定播放列表中的所有视频。喜欢视频列表。我发现了这段视频 - link。这就是我现在所拥有的:
$(document).ready(function() {
$.get(
"https://www.googleapis.com/youtube/v3/channels",{
part : 'contentDetails',
forUsername : 'CHANNEL_NAME',
key: 'MY_KEY'},
function(data) {
$.each( data.items, function( i, item ) {
console.log(item);
})
}
);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
但是我在控制台中什么也没有,尽管通过console.log(item)
判断必须存在某些东西,至少undefined
。即使我只写console.log('hi')
,我仍然什么都没有。我只是无法理解什么是错的。无论如何,我会非常感谢任何帮助。
答案 0 :(得分:3)
如果我正确理解了您的问题,您想要检索特定频道的视频。您应该使用https://www.googleapis.com/youtube/v3/search
端点而不是https://www.googleapis.com/youtube/v3/channels
。所以,我提供了channelId
和type
参数的示例; (type
参数可以是video, playlist, channel
)
$(document).ready(function() {
$.get(
"https://www.googleapis.com/youtube/v3/search",{
part : 'snippet',
channelId : 'UCR5wZcXtOUka8jTA57flzMg',
type : 'video',
key: 'MyKey'},
function(data) {
$.each( data.items, function( i, item ) {
console.log(item);
})
}
);
});
这会为您提供频道的视频。如果您想要获取频道的播放列表,只需将type
参数更改为playlist
即可。这是官方documentation。
答案 1 :(得分:2)
所以如果有人想知道,这里已经完成了代码:
$(document).ready(function() {
$.get(
"https://www.googleapis.com/youtube/v3/search",{
part : 'snippet',
channelId : 'CHANNEL_ID', // You can get one from Advanced settings on YouTube
type : 'video',
key: 'YOUR_KEY'},
function(data) {
$.each( data.items, function( i, item ) {
$('#results').append('<li>https://www.youtube.com/embed/' + item.id.videoId + '</li>');
})
}
);
});
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
</head>
<body>
<ul id="results"></ul>
</body>
</html>