我发现了类似的问题,但没有一个答案清楚而轻松地显示如何使用jQuery和JSON获取vimeo视频的缩略图。如果有人可以提供帮助那就太好了,这就是我所拥有的,但目前没有任何表现。
var vimeoVideoID = '17631561';
var videoCallback = 'showThumb';
$.getJSON('http://www.vimeo.com/api/v2/video/' + vimeoVideoID + '.json?callback=' + videoCallback,
function(data){
$(".thumbs").attr('src',data[0].thumbnail_large);
});
提前致谢。
答案 0 :(得分:32)
我相信你有“same origin policy”问题。您应该考虑使用“file_get_contents”或“fopen”之类的东西编写服务器端脚本,这样您就可以从vimeo中获取数据,将其转换为json,并使用一个很好的ajax输出到您的javascript调用
如果您想避免使用服务器端脚本,可以使用数据类型JSONP。
var vimeoVideoID = '17631561';
$.getJSON('https://www.vimeo.com/api/v2/video/' + vimeoVideoID + '.json?callback=?', {format: "json"}, function(data) {
$(".thumbs").attr('src', data[0].thumbnail_large);
});
请注意,URL与您使用它的方式略有不同。您定义为var的回调是不必要的。您将getJSON直接附加到函数中,因此您将在url'?'中调用'callback'。这会通知getJSON函数将成功的数据返回传递给提供的函数。
您可以测试我的代码here。希望它有所帮助!
答案 1 :(得分:0)
使用updated API,它将是...
$.getJSON('https://vimeo.com/api/oembed.json?url=https://vimeo.com/' + id, {format: "json"}, function(data) {
$(".thumbs").attr('src', data.thumbnail_url)
});
答案 2 :(得分:-1)
请查看this page; Vimeo有一个新的方法调用oEmbed
,因为Vimeo正在推动它的新oEmbed技术。
上述方法将在IE上失败(不显示拇指)。