diff --git a/src/js/config/defaults.js b/src/js/config/defaults.js index 8f5d081b..03c75150 100644 --- a/src/js/config/defaults.js +++ b/src/js/config/defaults.js @@ -200,7 +200,7 @@ const defaults = { vimeo: { sdk: 'https://player.vimeo.com/api/player.js', iframe: 'https://player.vimeo.com/video/{0}?{1}', - api: 'https://vimeo.com/api/v2/video/{0}.json', + api: 'https://vimeo.com/api/oembed.json?url={0}', }, youtube: { sdk: 'https://www.youtube.com/iframe_api', diff --git a/src/js/plugins/vimeo.js b/src/js/plugins/vimeo.js index d098fe96..33c327d7 100644 --- a/src/js/plugins/vimeo.js +++ b/src/js/plugins/vimeo.js @@ -121,21 +121,15 @@ const vimeo = { wrapper.appendChild(iframe); player.media = replaceElement(wrapper, player.media); } - + // Get poster image - fetch(format(player.config.urls.vimeo.api, id), 'json').then(response => { - if (is.empty(response)) { + fetch(format(player.config.urls.vimeo.api, src)).then(response => { + if (is.empty(response) || !response.thumbnail_url) { return; } - - // Get the URL for thumbnail - const url = new URL(response[0].thumbnail_large); - - // Get original image - url.pathname = `${url.pathname.split('_')[0]}.jpg`; - + // Set and show poster - ui.setPoster.call(player, url.href).catch(() => {}); + ui.setPoster.call(player, response.thumbnail_url).catch(() => { }); }); // Setup instance