我的烂番茄 API 限制为 10 次调用/秒。我总共需要打 50 个电话。
如果我把它们放在一起,很多电话都会被拒绝。
所以我需要在每 10 次调用后给出 1 秒的超时时间。
我该如何实施?这是我的代码:
$.get("t250.txt", function (data) {
var elem = data.split("\n");
$.each(elem, function(index, item) {
var $placeholder = $('<div>').appendTo("div.content");
setTimeout(function() {
$.ajax({
type: 'post',
url: moviesSearchUrl + '&q=' + encodeURI(item) + '&page_limit=1',
dataType: "jsonp",
async: false,
success: searchCallback
});
}, 1000);
function searchCallback(data){});
}
}
问题仍然存在。此外,页面等待 1 秒加载,然后完全加载所有内容。我setTimeout
在 for each 循环中给出了函数。因此,似乎没有任何影响。我究竟做错了什么 ?