Я пытаюсь получить, помимо прочего, название данного видео для определенного видео на YouTube. Поскольку все они, вероятно, связаны с одной и той же проблемой, я просто покажу упрощенный пример, просто получив название с помощью API. Вот что я до сих пор:
$.ajax({
url: "https://gdata.youtube.com/feeds/api/videos/" + videoID + "?v=2&alt=json",
dataType: "jsonp",
success: function(data) {
videoName = data.entry.title.$t;
$('#video_name').text(videoName);
}
});
Для некоторых видео, таких как этот, это работает отлично. Для других, таких как этот, он никогда не захватывает эту информацию.
Почему это не работает? Второй пример - это просто одно видео, которое не работает с этим. Около 1/3 не работают.
Я бы очень признателен за это.
EDIT Как я получаю videoID
:
var videoID = getUrlVars()["v"];
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,
function(m,key,value) {
vars[key] = value;
});
return vars;
}
Пример видео заканчивается так: ?v=J66NOwZegc4
EDIT2 Итак, я добавил функцию $.ajax с тем, что, по-видимому, вызывает проблему:
$.ajax({
url: "https://gdata.youtube.com/feeds/api/videos/" + videoID + "?v=2&alt=json",
dataType: "jsonp",
async: "false",
success: function(data) {
commentCount = data.entry.gd$comments.gd$feedLink.countHint;
iterations = Math.floor(commentCount/50);
remaining = commentCount - (iterations*50);
videoDesc = data.entry.title.$t;
$('#video_name').text(videoDesc);
document.title = 'Watching "' + videoDesc + '" on YTRT';
$('#shareLink').val('http://www.ytrealtime.com?v=' + videoID);
}
});