Каков самый простой способ получить название из видео youtybe, например, это название видео:
http://www.youtube.com/watch?v=Wp7B81Kx66o
Спасибо!
Каков самый простой способ получить название из видео youtybe, например, это название видео:
http://www.youtube.com/watch?v=Wp7B81Kx66o
Спасибо!
Используйте jQuery JSON, чтобы обратиться к API YouTube, чтобы вернуть результаты, а затем использовать jQuery для размещения результатов, где вы хотите. Вы можете использовать вкладку firebug NET, чтобы убедиться, что запросы/ответчики вернулись правильно, а затем используйте console.log(), чтобы убедиться, что вы правильно разобрали ответ.
например. URL:
GET https://gdata.youtube.com/feeds/api/videos/(the-video-id)?v=2&alt=json
Дополнительная информация:
Попробуйте следующее:
<script type="text/javascript">
function showMyVideos(data) {
var feed = data.feed;
var entries = feed.entry || [];
var html = ['<ul>'];
for (var i = 0; i < entries.length; i++) {
var entry = entries[i];
var title = entry.title.$t;
html.push('<li>', title, '</li>');
}
html.push('</ul>');
document.getElementById('videos').innerHTML = html.join('');
}
</script>
и это в вашей части тела:
<body>
<div id="videos">
<script
type="text/javascript"
src="http://gdata.youtube.com/feeds/users/GoogleDevelopers/uploads?alt=json-in-script&format=5&callback=showMyVideos">
</script>
</div>
</body>
Это переработанная реализация исходного ответа, предоставленного @easement, с использованием текущего v3 API данных YouTube.
Чтобы сделать запрос к API, вы можете использовать jQuery getJSON() для вызова, чтобы запросить название с YouTube через AJAX. API v3 данных YouTube v3 предоставляет три конечных точки, которые можно использовать для получения заголовка:
Пример реализации с использованием названия фрагмента
var yt_api_key = {your YouTube api key},
yt_video_id = {your YouTube video id},
yt_snippet_endpoint = "https://www.googleapis.com/youtube/v3/videos?part=snippet&id=" + yt_video_id + "&key=" + yt_api_key;
var jqxhr = $.getJSON(yt_snippet_endpoint)
.done(function(data) {
console.log("second success callback");
var title = getTitle(data);
// do something with title here
})
.fail(function() {
console.log("error, see network tab for response details");
});
function getTitle(snippet_json_data){
var title = snippet_json_data.title;
return title;
}
Попробуйте это для показа изображения Youtube перед представлением списка JQuery.
<script>
function showMyVideos(data) {
var feed = data.feed;
var entries = feed.entry || [];
var html = ['<ul data-role="listview">'];
for (var i = 0; i < entries.length; i++) {
var entry = entries[i];
var title = entry.title.$t;
var feature = entry.content.$t.substring(entry.content.$t.indexOf("src=")+5);
feature = feature.substring(0,feature.indexOf('"'));
html.push('<li><img src="' ,feature , '" />' , title , '<p>' , feature, '</p></li>');
}
html.push('</ul>');
document.getElementById('videos').innerHTML = html.join('');
}
</script>
<div id="videos">
<script
src="http://gdata.youtube.com/feeds/users/mostviewcomedy/uploads?alt=json-in-script&format=5&callback=showMyVideos">
</script>
</div>