2014-02-17 4 views
1

Я использовал некоторый код, чтобы найти последнее видео с определенного канала, у меня есть базовое представление о том, как он работает, но я не уверен, как он передает видео. Если кто-то может объяснить, что было бы здоровоКак работает этот видеоролик на YouTube?

<!--Latest video--> 
    <h1 class="title"> Latest video </h1> 
    <div id="static_video"></div> 
    <!--Source the latest vdeo--> 
    <script type="text/javascript"> 
     function showVideo(response) { 
      if(response.data && response.data.items) { 
       var items = response.data.items; 
       if(items.length>0) { 
        var item = items[0]; 
        var videoid = "http://www.youtube.com/embed/"+item.id; 
        console.log("Latest ID: '"+videoid+"'"); 
        var video = "<iframe width='720' height='480' src='"+videoid+"' frameborder='0' allowfullscreen></iframe>"; 
        $('#static_video').html(video); 
       } 
      } 
     } 
    </script> 
<script type="text/javascript" src="https://gdata.youtube.com/feeds/api/users/UC9DiuD3z0btMOAMG_FvDRag/uploads?max-results=1&orderby=published&v=2&alt=jsonc&callback=showVideo"></script> 

Это можно увидеть here

Другая помощь будет, как я могу показать все видео, с окном поиска, а поиск по ним. Извините, если я кажусь жадным, но это будет МАССИВНАЯ помощь, если кто-нибудь сможет объяснить.

EDIT: Bump, мне не нравится натыкаться, но мне это нужно, пожалуйста, помогите мне!

+0

не понимаю : найти последнее видео с определенного видео – mpgn

+0

Ah сделал опечатку, означало видео с определенного канала, сейчас будет редактировать –

ответ

1

Сначала API V2 является устаревшим, вы должны использовать YouTube API v3 с Ressource search.list

вам нужен ключ API, следовать этому link, чтобы получить один.

Используйте эти параметры, чтобы получить самую последнюю загрузку канала:

part: 'snippet' or 'id' 
channelId: 'UC9DiuD3z0btMOAMG_FvDRag' 
maxResults: 1 
order: date 

https://www.googleapis.com/youtube/v3/search?part=id&channelId=UC9DiuD3z0btMOAMG_FvDRag&maxResults=1&order=date&key= {YOUR_API_KEY}

Выход:

"items": [ 
    { 
    "kind": "youtube#searchResult", 
    "etag": "\"PSjn-HSKiX6orvNhGZvglLI2lvk/9r2l5FZB6-ysy9_0d37qYA5Kg8I\"", 
    "id": { 
    "kind": "youtube#video", 
    "videoId": "WH8U2NQ_fnA" 
    } 
    } 

Тогда у вас есть последний идентификатор видео из канал. После этого вам необходимо использовать YouTube API player. Живой пример, показывающий, как работает плеер: http://jsbin.com/vajobawiba/1/edit?html,js,output

Вам просто нужно скопировать этот код с идентификатором видео, который вы получите с предыдущего шага!

Пример:

Добавьте эту строку в конце тела в вашем index.html

<script src="https://apis.google.com/js/client.js?onload=googleApiClientReady"></script> 

И есть Javascript пример:

function googleApiClientReady() { 
    var apiKey = 'YOUR_API_KEY', 
     youtubeId, 
     request; 
    gapi.client.setApiKey(apiKey); 
    gapi.client.load('youtube', 'v3', function() { 
     request = gapi.client.youtube.search.list({ 
      part: 'id', 
      channelId: 'UC9DiuD3z0btMOAMG_FvDRag', 
      maxResults: 1, 
      order: date 
     }); 
     request.execute(function(response) { 
      if(response.pageInfo.totalResults != 0) { 
       youtubeId = response.result.items[0].id.videoId; 
      } 
     }); 
    }); 
} 
+0

Извините, если это кажется жадным, но не могли бы вы показать мне пример кода запроса? –

+0

@ EverlessDrop41 добавить пример – mpgn

Смежные вопросы