Youtube api不显示少数视频的播放列表缩略图

时间:2014-05-31 12:02:34

标签: youtube youtube-api youtube-javascript-api

这就是我从每个记录的响应中获取缩略图的方法

data.items[i].snippet.thumbnails.high.url

但是对于某些视频我只是获取默认图像

https://i.ytimg.com/vi/default.jpg

而不是示例

https://i1.ytimg.com/vi/umgK1_5Dcw4/hqdefault.jpg

如何解决此问题缩略图在我的YouTube频道中可见

1 个答案:

答案 0 :(得分:5)

我最近经历了同样的事情并且拔掉了我的头发。问题是播放列表中没有设置正确缩略图的视频在YouTube网站上设置为不公开。一旦视频公开,就会出现正确的缩略图。

我遇到的另一个问题是,如果缩略图不起作用,缩略图的整个结构都有不同的键。

在缩略图工作的Feed中,我们看到了这种结构:

"thumbnails": {
     "default": {
      "url": "https://i.ytimg.com/vi/XXXXX/default.jpg",
      "width": 120,
      "height": 90
     },
     "medium": {
      "url": "https://i.ytimg.com/vi/XXXXX/mqdefault.jpg",
      "width": 320,
      "height": 180
     },
     "high": {
      "url": "https://i.ytimg.com/vi/XXXXX/hqdefault.jpg",
      "width": 480,
      "height": 360
     },
     "standard": {
      "url": "https://i.ytimg.com/vi/XXXXX/sddefault.jpg",
      "width": 640,
      "height": 480
     },
     "maxres": {
      "url": "https://i.ytimg.com/vi/XXXXX/maxresdefault.jpg",
      "width": 1280,
      "height": 720
     }

没有缩略图的项目如下所示:

"thumbnails": {
     "default": {
      "url": "https://i.ytimg.com/vi/default.jpg"
     },
     "medium": {
      "url": "https://i.ytimg.com/vi/default.jpg"
     },
     "high": {
      "url": "https://i.ytimg.com/vi/default.jpg"
     }

在我的代码中,我一直在寻找标准尺寸缩略图和高度&宽度,在非工作代码中不存在,这当然导致了一个空对象并使应用程序崩溃。