youtube API - 缩略图高度和宽度未返回



当向API执行搜索请求时,高度&即使在fields参数中指定了缩略图的宽度字段,也不包括在响应中。下面是一个提供API参数的JS对象示例:

{
    part: 'snippet',
    type: 'video',
    order: 'relevance',
    q: 'test',
    fields: 'items(snippet(thumbnails(high(url,height,width))))'
}

转换成以下请求URL:

https://www.googleapis.com/youtube/v3/search?order=relevance&part=snippet&q=test&fields=items(snippet(thumbnails(high(url%2Cheight%2Cwidth))))&type=video&key={YOUR_API_KEY}

此调用产生以下响应,不包含缩略图的宽度或高度。

{
 "items": [
  {
   "snippet": {
    "thumbnails": {
     "high": {
      "url": "https://i.ytimg.com/vi/3HKs8WTGzw8/hqdefault.jpg"
     }
    }
   }
  },
  {
   "snippet": {
    "thumbnails": {
     "high": {
      "url": "https://i.ytimg.com/vi/vW_8K_mLtsU/hqdefault.jpg"
     }
    }
   }
  },
  {
   "snippet": {
    "thumbnails": {
     "high": {
      "url": "https://i.ytimg.com/vi/4Yk-jd4BHys/hqdefault.jpg"
     }
    }
   }
  },
  {
   "snippet": {
    "thumbnails": {
     "high": {
      "url": "https://i.ytimg.com/vi/HU9mnag7vSM/hqdefault.jpg"
     }
    }
   }
  },
  {
   "snippet": {
    "thumbnails": {
     "high": {
      "url": "https://i.ytimg.com/vi/pyrH7b0zHwU/hqdefault.jpg"
     }
    }
   }
  }
 ]
}

这同样不适用于defaultmedium缩略图键。

如何检索这些字段?

搜索端点不会返回这些详细信息。您必须获取从搜索返回的id,并为片段对视频端点执行另一个API调用。例如

https://www.googleapis.com/youtube/v3/videos?part=snippet&id={VIDEO_ID}&key={YOUR_API_KEY}

根据Youtube日期API (v3)搜索方法返回每个文档,但不能正常工作。

现在你应该尝试另一种方法,通过视频的API调用。

URL:- https://www.googleapis.com/youtube/v3/videos?part=snippet&id={VIDEO_ID}&key={YOUR_API_KEY}

VIDEO_ID =通过搜索API返回

YOUR_API_KEY = Google Project API key

Try it

$.get(
            "https://www.googleapis.com/youtube/v3/search",{
            order:'relevance',
            part : 'snippet', 
            type : 'video',
            q: 'test',
            key: 'XXXXXXX'},
            function(data) {
               alert(data.items.length);
               $.each( data.items, function( i, item ) {
                   pid = item.id.videoId;
                   getVids(pid);
               });
           }
         );
         //Get Videos
         function getVids(pid){
            $.get(
                 "https://www.googleapis.com/youtube/v3/videos",{
                 part : 'snippet', 
                 id : pid,
                 key: 'XXXXXXXX'},
                 function(data) {
                     //Code whatever you want 
                 }
             );
         }

最新更新