// This is a first attempt at using YouTube's v3 API. It doesn't require authentication.
getAutoGeneratedPlaylistData: function() {
gapi.client.setApiKey('{API_KEY}');
gapi.client.load('youtube', 'v3', function() {
var request = gapi.client.youtube.playlistItems.list({
part: 'contentDetails',
maxResults: 50,
playlistId: 'ALYL4kY05133rTMhTulSaXKj_Y6el9q0JH',
fields: 'items/contentDetails'
});
request.execute(function (response) {
console.log("Response:", response);
});
});
}
此代碼獲取自動生成的YouTube播放列表的playlistId,並從中獲取前50項。使用v3 API獲取自動生成的YouTube播放列表的視頻信息列表
提供的響應的contentDetails包含每個視頻的ID。
似乎如果我想檢索自動生成播放列表的所有視頻信息,我需要向YouTube發出2N個請求? N請求從播放列表中檢索所有視頻ID,最多不超過50個。一旦我擁有了所有的視頻ID ......那麼我需要向YouTube索要所有視頻的視頻信息。我可以在一個請求中獲得50個視頻的數據...所以這是另外N個請求YouTube來檢索所有視頻?
這似乎是一個糟糕的設計決定。以前,如果使用v2 API檢索播放列表的所有信息,我可以在初始請求中爲視頻發送所有必要信息。
使用V3 API不再可能嗎?我應該承擔O(2N)的網絡費用......?真?
也許我誤解了,但不是隻有2n個請求?每個視頻2個? – RyanS
啊,是的,你說得對。顯然,生鏽,我認爲這不是很糟糕..只是震驚我無法同時獲得視頻信息。 –