webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg

Как понять youtube js api?

Долго разбирался с php api - более менее въехал
Сейчас надо реализовать простой запрос, но на js. А именно выбрать 5 последних видео, допустим отсюда:
https://www.youtube.com/user/mgimo/playlists?disab...
Читаю доки и не могу понять. Где-то нужен ключ, где-то oauth, где вообще не понятно что нужно. Может кто-то как-то на пальцах рассказать.
Если код с комментами - вообще буду плясать от счастья)))

Пробовал для теста
<script src="https://apis.google.com/js/api.js">
</script>
<script>
  var request = gapi.client.youtube.search.list({
    q: 'some hren',
    part: 'snippet',
    key: 'some_key',
    forUsername: 'mgimo'
  });
  console.log(request);
</script>

получаю Cannot read property 'youtube' of undefined
  • Вопрос задан
  • 2488 просмотров
Решения вопроса 1
webinar
@webinar Автор вопроса
Учим yii: https://youtu.be/-WRMlGHLgRg
а ларчик просто открывался
$.get('https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=5&q=мгимо&key=somekey&channelId=UCx_lX-GP9LuWJA_vQBfEUKw',function (request) {
        $.each(request.items,function(i,el){
            $('#video').append('<iframe width="1280" height="720" src="https://www.youtube.com/embed/'+el.id.videoId+'" frameborder="0" gesture="media" allow="encrypted-media" allowfullscreen></iframe>');
        });
    })

Спустя 2 часа:
можно получать видео с плейлиста, не используя поиск: https://www.googleapis.com/youtube/v3/playlistItems
А мне нужно было с канала, а не его плейлиста. Но я обнаружил, что у канала всегда есть плейлист "upload", в котором всегда все видео загруженные, он как бы скрыт, но он всегда есть и у него есть id, найти это id правда не так просто как хотелось бы, на зато есть теперь более правильный вариант для получения 5 последних видео канала:
$.get('https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&maxResults=5&playlistId=idплейлистаuploadдляканала&key=ВашКлючдляapi',function (request) {
        console.log(request.items);
    })

А самое приятное что ни один youtube sdk не пострадал, лишних либ не подключено, авторизаций не нужно, чистый js (правда с jquery, но необходимости в нем нет).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
17 апр. 2024, в 00:48
35000 руб./за проект
17 апр. 2024, в 00:13
800 руб./за проект
17 апр. 2024, в 00:06
240000 руб./за проект