搜索结果包含与 API 请求中指定的搜索参数匹配的 YouTube 视频、频道或播放列表的相关信息。虽然搜索结果指向可唯一标识的资源(例如视频),但它自身没有持久性数据。
方法
该 API 支持使用以下搜索方法:
资源表示法
以下 JSON 结构显示了搜索结果的格式:
{ "kind": "youtube#searchResult", "etag": etag, "id": { "kind": string, "videoId": string, "channelId": string, "playlistId": string }, "snippet": { "publishedAt": datetime, "channelId": string, "title": string, "description": string, "thumbnails": { (key): { "url": string, "width": unsigned integer, "height": unsigned integer } }, "channelTitle": string, "liveBroadcastContent": string } }
属性
下表定义了搜索结果中显示的属性:
属性 | |
---|---|
kind |
string 标识 API 资源的类型。其值为 youtube#searchResult 。 |
etag |
etag 此资源的 Etag。 |
id |
object id 对象包含的信息可用于唯一标识与搜索请求匹配的资源。 |
id.kind |
string API 资源的类型。 |
id.videoId |
string 如果 id.type 属性的值为 youtube#video ,则此属性会显示,并且其值将包含 YouTube 用来唯一标识与搜索查询匹配的视频的 ID。 |
id.channelId |
string 如果 id.type 属性的值为 youtube#channel ,则此属性会显示,并且其值将包含 YouTube 用来唯一标识与搜索查询匹配的频道的 ID。 |
id.playlistId |
string 如果 id.type 属性的值为 youtube#playlist ,则此属性会显示,并且其值将包含 YouTube 用来唯一标识与搜索查询匹配的播放列表的 ID。 |
snippet |
object snippet 对象包含搜索结果的基本详情,例如其标题或说明。例如,如果搜索结果是一个视频,则标题就是视频的标题,说明就是视频的说明。 |
snippet.publishedAt |
datetime 搜索结果所标识的资源的创建日期和时间。该值以 ISO 8601 格式指定。 |
snippet.channelId |
string YouTube 使用以下值来唯一标识发布搜索结果标识的资源的频道。 |
snippet.title |
string 搜索结果的标题。 |
snippet.description |
string 搜索结果的说明。 |
snippet.thumbnails |
object 与搜索结果相关联的缩略图图片的地图。对于地图中的每个对象,键是缩略图图片的名称,值是包含有关缩略图的其他信息的对象。 |
snippet.thumbnails.(key) |
object 有效的键值对包括:
|
snippet.thumbnails.(key).url |
string 图片的网址。 |
snippet.thumbnails.(key).width |
unsigned integer 图片的宽度。 |
snippet.thumbnails.(key).height |
unsigned integer 图片的高度。 |
snippet.channelTitle |
string 频道的标题,该频道发布了搜索结果标识的资源。 |
snippet.liveBroadcastContent |
string 指示 video 或 channel 资源是否有直播内容。有效的属性值包括 upcoming 、live 和 none 。对于 video 资源,值为 upcoming 表示视频是尚未开始的直播活动,而值 live 表示视频正在进行现场直播。对于 channel 资源,值 upcoming 表示频道有尚未开始的预定直播,而值 live 表示频道正在进行现场直播。 |