我们曾经(2015年4月20日之前Youtube代码转换)使用此:
然而,这不再有效,我们会收到一个通用视频,告诉我们要转到此处:https://support.google.com/youtube/answer/6098135?p=yt_devicesupport&hl=en&rd=1
<div id="player"></div>
<script>
function showVideo(response) {
if(response.data && response.data.items) {
var items = response.data.items;
if(items.length>0) {
var item = items[0];
var videoid = "https://www.youtube.com/embed/"+item.id;
console.log("Latest ID: '"+videoid+"'");
var video = "<iframe width='200' height='200' src='"+videoid+"' frameborder='0' allowfullscreen></iframe>";
$('#player').html(video);
}
}
}
</script>
<script src="https://gdata.youtube.com/feeds/api/users/AllCoveredInc/uploads?max-results=1&orderby=published&v=2&alt=jsonc&callback=showVideo"></script>
请指教。感谢。
答案 0 :(得分:0)
如果您想要获取视频的“播放列表”只是用户的上传,只要您拥有用户的频道ID,就可以在V3中获得相同的信息。如果你没有频道ID,你可以这样做:
https://www.googleapis.com/youtube/v3/channels?part=snippet&forUsername= {用户名}&安培;关键= {} YOUR_API_KEY
(不要忘记在console.developers.google.com上注册api密钥!)
获得频道ID后,您可以使用搜索端点获取用户最新上传的视频,如下所示:
https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId= {channel id here}&amp; maxResults = 1&amp; key = {YOUR_API_KEY}
请注意,这是JSON,而不是JSON-P,因此它不会自动执行您的回调;您需要使用Google API javascript客户端或标准的ajax库来进行该调用,当数据返回时,您可以手动将其传递给showvideo()方法进行处理。
如果您想要从其他类型的播放列表中获取视频(即不是用户的上传,但可能是手工制作的播放列表),您的通话将会是这样的:
https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=PLid2PnAnKqQEETT-Ppjj5y_PgpcQ8qGaQ&key= {YOUR_API_KEY}
以PL开头的长字符串是播放列表ID。请注意,生成的json形式略有不同,但仍包含视频ID。