@filisonov

Как сделать перебор ключей APi, когда у них закончился лимит?

Приветствую !
есть скрипт:
var vidWidth = 480;
var vidHeight = 360;
var vidResults = 1;
$(document).ready(function(){
        var searchText = $('#entry-title');
		var h1Text = $(".entry-title").text();
        $.get(
        "https://www.googleapis.com/youtube/v3/search",{
            part: 'id,snippet',			
            q: h1Text,
            maxResults: vidResults,
			regionCode:'RU',
            key: 'ключ АПИ'},
            function(data){
                var output;
                $.each(data.items, function(i, item){
                    console.log(item);
                    videTitle = item.snippet.title;
                    videoId = item.id.videoId;
                    output = '<h2>Видео на ' + h1Text+' </h2>'+'<iframe frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen height="'+vidHeight+'" width="'+vidWidth+'" src="https://www.youtube.com/embed/'+videoId+'\"></iframe>';
                    //Append to results listStyleType
                    $('#results').append(output);
                })
            }
        );
    //}
});


Как в поле

key: 'ключ АПИ'

Вставить несколько ключей с проверкой на валидность?
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
twobomb
@twobomb
var keys = ["key1","key2","key3"];
var checkCount = keys.length;
keys.forEach(el=>{
        $.get(
        "https://www.googleapis.com/youtube/v3/search",{
            part: 'id',			            
            key: el})
        .done((d)=>check(d,el))
        .fail((d)=>check(d,el));
});

function check(data,key){
  if(data.statusText == "error" && data.status == 400 && data.responseJSON.error.errors[0].reason == "keyInvalid")
  	keys.splice(keys.indexOf(key),1);
    if(--checkCount == 0)
    	alert(`Валидные ключи: ${keys}`);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы