Skip to content

Instantly share code, notes, and snippets.

@chattes
Created August 9, 2016 12:39
Show Gist options
  • Save chattes/a08d685a372e0debef3bd860ee447adf to your computer and use it in GitHub Desktop.
Save chattes/a08d685a372e0debef3bd860ee447adf to your computer and use it in GitHub Desktop.
setTImeOut to Query TMDB api and avoid Too many request error
moviedb.discoverMovie(query_en, function (err, list) {
//Get Movie List page 1
if (err) {return console.log(err);}
movieDbList = movieDbList.concat(list.results);
//Query Limitation has been set by TMDB API- 40 Queries ---10 Second Wait Time--->Next Query
//Create an array of Queries by Page for the rest of the movies
//Create batches of 30 Request to be processed
for (var page_no = 2; page_no <= list.total_pages; page_no++) {
query_temp = query_en + '&page=' + page_no;
querybatch.push(query_temp);
if( page_no % 30 === 0){
allQueries.push(querybatch);
querybatch = [];//initialize the array
}
}
if(querybatch.length>0) allQueries.push(querybatch);
console.log("Total Queries: "+allQueries.length);
for(var i=0;i<allQueries.length;i++){
//Schedule the Queries at a timeInterval of 11 seconds to be fired into the TMDB API.
setTimeout(_queryTMDB,i*11000,allQueries[i]);
}
}
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment