【问题标题】:Youtube API - channels not returning JSON data?Youtube API - 频道不返回 JSON 数据?
【发布时间】:2019-03-22 16:34:47
【问题描述】:

我的 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)

【问题讨论】:

    标签: javascript youtube youtube-javascript-api


    【解决方案1】:

    您必须先检查channels.list的响应是否有数据。

    您面临的错误是因为可能没有返回数据。

    为避免检索上传的播放列表,您可以这样做:

    • 拥有channel_id 后,替换突出显示的字母,如下所示:

    频道:微软 Hololens:

    Channel_id:UCT2rZIAL-zNqeK1OmLLUa6g

    上传(播放列表):UUT2rZIAL-zNqeK1OmLLUa6g

    然后就可以调用get_videos()函数了。

    【讨论】:

    • 您好,感谢您的回复。我试过这个 get_file('googleapis.com/youtube/v3/… { ... 它正在返回数据,但我认为它没有以正确的格式返回它。当我在这里尝试数据 api 时:developers.google.com/apis-explorer/?hl=en_US#p/youtube/v3/… 它返回一个数据结构。 .. 我不认为我的调用会返回那个结构!!!
    • @user1106252 抱歉回复晚了。请edit your question 提供您获得的结构和来自 API 的响应。
    • 嗨,不用道歉。我不知道问题出在哪里,所以我走了一条不同的路线,我的“新”解决方案部分有效,所以我会坚持下去。顺便说一句,返回的数据似乎是“平面”数据,即根本不在结构中。还是谢谢。
    猜你喜欢
    • 2016-06-05
    • 2019-09-01
    • 2021-12-06
    • 2016-03-12
    • 2015-09-13
    • 1970-01-01
    • 2021-05-26
    • 2018-12-25
    • 2014-01-03
    相关资源
    最近更新 更多