Youtube Data API v3 - 使用逗号分隔的视频ID搜索视频

时间:2014-03-12 17:18:08

标签: javascript youtube-api

我想通过逗号分隔的视频ID字符串仅根据其ID搜索视频。可行的是,API Explorer通过...提供了带逗号分隔ID的样本。

GET https://www.googleapis.com/youtube/v3/videos?part=snippet&
id=JFex915ZebY%2CVGvHnDeS12o%2CYxHnNdZMngk&key={YOUR_API_KEY} // %2C = comma

...但没有关于如何以友好的GUI格式显示(笨蛋!)。使用一个ID,下面的代码可以工作,但是有多个ID都会失败。我想知道我必须添加/修改什么才能使下面的代码示例工作?我在控制台中收到此错误:

TypeError:response.items未定义

. . .

function searchvideo(vq, pageToken) {
$('ol').empty();
gapi.client.setApiKey('API-KEY');
gapi.client.load('youtube', 'v3', function(){
var vIDquery = $('#ytquery').val();

var vrequestOptions = { // Anything missing here?
q: vIDquery,
part: 'snippet'
};

. . .

var vrequest = gapi.client.youtube.search.list(vrequestOptions);

vrequest.execute(function(response) {

. . .

(TypeError: response.items is undefined)

for(var i=0;i<response.items.length;i++) {
var rvideoID = response.items[i].id.videoId; // or snippet.videoId
var rchannelID = response.items[i].snippet.channelId;
var rchannelTitle = response.items[i].snippet.channelTitle;
var rTitle = response.items[i].snippet.title;
var rDescription = response.items[i].snippet.description;
var rthumbnail = response.items[i].snippet.thumbnails.default.url;

. . .

有点在这里使用API​​ v3,仍然试图抓住新的东西,看起来像items.length thingy可能是罪魁祸首,我错过了一个数组? Thx,非常感谢任何提示。 - Koolness

1 个答案:

答案 0 :(得分:0)

找到答案,在回答其他问题时,我就落在了这个问题上: How do I retrieve a Video by ID with Youtube API v3?

我只需要正确指定所需的参数,我发誓我尝试了所有LOL!

具体代码现在看起来像这样:

. . .

function searchvideo(vIDquery, pageToken) {
$('ol').empty();
gapi.client.setApiKey('YOUR-API-KEY');
gapi.client.load('youtube', 'v3', function(){
var vIDquery = $('#ytquery').val(); // Video Id input box

var requestOptions = {
id: vIDquery, // Changed q: to id:
part: 'id,snippet' // Changed 'snippet' to 'id,snippet'
};

. . .

// Changed youtube.search.list to youtube.videos.list

var request = gapi.client.youtube.videos.list(requestOptions);

. . .

在Data API v2中,我必须编写一个复杂的方法来覆盖错误响应,以便在找到丢失或错误的ID时gdata调用不会失败。我还必须处理无序的视频列表,这些列表必须使用数组应用完成方法重新排序。现在我看到API 3工作奇迹没有代码膨胀!迷死!

希望这有助于他人。 - Koolness