搜索结果包含有关 YouTube 视频、频道或播放列表的信息,这些信息与 API 请求中指定的搜索参数相匹配。虽然搜索结果指向可明确识别的资源(例如视频),但它没有自己的持久性数据。
方法
该 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 表示频道具有正在进行的直播。 |