我的JavaScript语言不适合应用,请耐心等待。
获得一个API调用以获取指定用户的频道数据。然后,我想使用“ relatedPlaylists”数据项中的ID来检索所有用户视频。
目前,我不认为该API返回正确的数据。任何帮助表示赞赏。
function get_playlist() {
get_file('https://www.googleapis.com/youtube/v3/channels?part=contentDetails&forUsername=petermillard1&key='+YouTubeAPIkey,
function(data)
{
show_channel(JSON.parse(data));
get_videos();
});
}
function show_channel(data) {
console.log('Channel data:' + data);
console.log('Uploads: ' + data.items.contentDetails.relatedPlaylists.uploads);
videos=data.items.contentDetails.relatedPlaylists.uploads;
console.log('Videos: ' + videos);
}
function get_videos() {
get_file('https://www.googleapis.com/youtube/v3/playlistItems?part=snippet%2C+contentDetails&id='+ videos + '&key='+YouTubeAPIkey,
function(data)
{
create_playlist(JSON.parse(data));
});
}
这是控制台中显示的内容:
Channel data:[object Object]
Uncaught TypeError: Cannot read property 'relatedPlaylists' of undefined
at show_channel (vget.html:170)
at vget.html:163
at XMLHttpRequest.XHR.onreadystatechange (vget.html:190)
答案 0 :(得分:0)
您必须首先检查channels.list
的响应是否包含数据。
您面临的错误是因为可能未返回任何数据。
为避免检索上载播放列表,您可以执行以下操作:
channel_id
,就可以如下所示替换突出显示的字母:频道:Microsoft Hololens:
Channel_id:U C T2rZIAL-zNqeK1OmLLUa6g
上传(播放列表):U U T2rZIAL-zNqeK1OmLLUa6g
然后您可以调用get_videos()
函数。