获取YouTube未订阅频道预告片

时间:2013-06-13 14:08:27

标签: jquery json youtube-api youtube-channels

YouTube有一项功能,您可以在频道中制作视频,供未订阅的用户在访问您的频道时查看。我正在尝试使用JSON(ASP.NET MVC4)在网页上找到一种显示此视频的方法,但我并不熟悉所有标签等。我在Google上查了一些信息:https://developers.google.com/youtube/v3/docs/channels并发现:brandingSettings.channel.unsubscribedTrailer但我不太确定如何访问它。

这是我的代码:     $(document).ready(function(){

    var playListURL = 'http://gdata.youtube.com/feeds/api/playlists/XXXXXXXXXXXX?v=2&alt=json&max-results=50&callback=?';
    var videoURL = 'http://www.youtube.com/watch?v=';
    $.getJSON(playListURL, function (data) {
        var list_data = "";
        var column_count = -1;
        var end_li = "</li>";
        var begin_div = "<div class='inner-item'>";
        var end_div = "</div>";
        var html_data = "";
        var tags = new Array();

        $.each(data.feed.entry, function (i, item) {
            column_count = column_count + 1;
            var feedTitle = item.title.$t;
            var feedURL = item.link[1].href;
            var videoDate = new Date(item.published.$t).toLocaleDateString()
            var fragments = feedURL.split("/");
            var videoID = fragments[fragments.length - 2];
            var description = item.media$group.media$description.$t;
            var url = videoURL + videoID;
            var thumb = "http://img.youtube.com/vi/" + videoID + "/default.jpg";

            //Do some stuff with the vid.
            });
        });

我是否需要为此访问其他网址,或者我可以在某处找到item媒体资源?

以上代码用于显示来自特定播放列表的所有视频,并且效果很好(包含所有代码),但我只需找到unsubscribeTrailer并尽可能显示该内容。

1 个答案:

答案 0 :(得分:2)

您的网址确实错误...您引用的文档介绍了&#39; unsubscribedTrailer&#39;字段是针对API的v3,但您的代码正在调用v2,其中该字段尚未公开。相反,您可以尝试以下网址:

https://www.googleapis.com/youtube/v3/channels?part=snippet,brandingSettings&id={DESIRED_CHANNEL_ID}&key={YOUR_API_KEY}

重要的因素是包括品牌设置&#39;在你的&#39;部分&#39;参数,以便使用JSON响应返回所需的字段。