0
我有一個YouTube視頻網址列表。我想使用YouTube API來查找每個用戶的評分和評分。該API提供了一種使用URL查找此信息的方法,但僅適用於單個視頻:https://developers.google.com/youtube/2.0/developers_guide_protocol_video_entries。YouTube API - 從網址列表獲取視頻評分
我可以發送一堆同步AJAX請求,但速度太慢。我嘗試異步發送它們,並等待它們完成,如下所示:
MyObj.prototype.getYTData = function (urls) {
var self = this,
requests = 0,
vids = [];
$.each(urls, function (i, vidUrl) {
var id = self.getURLParameter(vidUrl, 'v');
requests += 1;
$.ajax({
type: 'GET',
url: 'https://gdata.youtube.com/feeds/api/videos/' + id + '?v=2',
data: { alt: 'jsonc' },
success: function (data) {
self.isGood(data.data) && vids.push(data.data);
},
complete: function() {
requests -= 1;
}
});
});
while (requests) {};
};
它看起來像該函數永遠掛起。我的猜測是這是因爲我用太多請求淹沒服務器。我可以在請求之間設置一個小的延遲,但我認爲應該有更好的方法來做到這一點。
什麼是獲得所有網址評分信息的好方法?