【问题标题】:get YouTube videoID from gdata.youtube.com/feeds/api/videos (YouTube api)从 gdata.youtube.com/feeds/api/videos (YouTube api) 获取 YouTube videoID
【发布时间】:2011-01-15 00:19:00
【问题描述】:

使用 jQuery 和 YouTube api。

我已经尝试了一段时间来简单地获取搜索视频的 ID,似乎或者我是盲人,或者来自 youtube 的人希望我们工作超过必要的 ;-)

#search = 'mad max';

$.ajax({
    url: "http://gdata.youtube.com/feeds/api/videos?q=" + escape($("#search").val()) + "&alt=json&max-results=30&format=5",
    dataType: "jsonp",
    success: function (data) {showVideoList(data)}
});

function showVideoList(data) {
    console.log(data);
}

我得到了很多信息,但视频 ID 除外。好的,我可以从:

data.feed.entry[0].entrymedia$group.media$player[0].url 

但必须使用 regExp 并且将来可能会更改。这个对象中没有我可以只获取 videoID 的属性?

【问题讨论】:

    标签: javascript jquery youtube-api


    【解决方案1】:

    试试这个:

    var id = data.feed.entry[0].id.$t.split('/').reverse()[0];
    

    【讨论】:

    • 感谢 Ŝime !它完全按预期工作。虽然我希望找到一种更清洁的方式。
    【解决方案2】:

    要补充 Šime 的答案,您可以使用 'pop' 而不是反转整个数组:

    var id = data.feed.entry[0].id.$t.split('/').pop();
    

    【讨论】:

      【解决方案3】:

      由于这在 google 上排名很高,值得注意的是,现在 youtube 将 videoid 返回为:

      feed.entry[0].media$group.yt$videoid.$t
      

      【讨论】:

      • 我在 json 中看不到它...也许它已被删除?
      猜你喜欢
      • 1970-01-01
      • 2015-08-21
      • 2020-12-08
      • 2017-09-01
      • 2016-03-11
      • 2015-10-01
      • 2021-08-23
      • 2015-08-26
      • 2012-04-08
      相关资源
      最近更新 更多