У меня есть сайт, на котором пользователи публикуют ссылки на видео (vimeo, youtube, instagram), и сайт автоматически подает их и генерирует миниатюру. Для YouTube и Instagram это очень просто, так как вы просто извлекаете идентификатор из URL и вставляете его в путь миниатюр, и он работает. Однако Vimeo не использует один и тот же идентификатор для видео и его миниатюр. Недавно было большое сообщение с несколькими различными решениями для создания миниатюрных изображений vimeo из идентификатора, несколько из которых работают в процессе разработки на локальном сервере, но ни одно из которых не работает в режиме онлайн. Любые мысли о том, почему это может быть?
Ниже приведены два кода, которые я пробовал, ни один из которых, к сожалению, не работает:
<img id="{{video.id}}thumb" class="img-responsive img-fluid img-thumbnail;" style="position: absolute; top: -9999px; left: -9999px; right: -9999px; bottom: -9999px; margin: auto; width:320px"/>
<script>
$(document).ready(function () {
var vimeoVideoUrl = 'https://player.vimeo.com/video/{{video.vimeo_id}}';
var match = /vimeo.*\/(\d+)/i.exec(vimeoVideoUrl);
if (match) {
var vimeoVideoID = match[1];
$.getJSON('http://www.vimeo.com/api/v2/video/' + {{video.vimeo_id}} + '.json?callback=?', { format: "json" }, function (data) {
featuredImg = data[0].thumbnail_large;
$('#{{video.id}}thumb').attr("src", featuredImg);
});
}
});
</script>
и
<img class="{{video.vimeo_id}} img-responsive img-fluid img-thumbnail;" style="position: absolute; top: -9999px; left: -9999px; right: -9999px; bottom: -9999px; margin: auto; width:320px"/>
<script>
var vimeoVideoID = '{{video.vimeo_id}}';
$.getJSON('http://www.vimeo.com/api/v2/video/' + vimeoVideoID + '.json?callback=?', {format: "json"}, function(data) {
$(".{{video.vimeo_id}}").attr('src', data[0].thumbnail_large);
});
</script>
Оба отлично работают на моем локальном хосте, но при подключении возвращают черные ящики. Помощь