【发布时间】:2020-07-11 02:12:00
【问题描述】:
我试图确定 YouTube 视频是否可以使用 YouTube 数据 API v3 嵌入,从对类似问题的回答中我注意到视频的 status.embeddable 属性,对于这样的请求:
https://www.googleapis.com/youtube/v3/videos?id=63flkf3S1bE&part=contentDetails,status&key={MY_API_KEY}
响应如下
{
"kind": "youtube#videoListResponse",
"etag": "\"ksCrgYQhtFrXgbHAhi9Fo5t0C2I/ctZQYtBcOuMdnQXh8-Fv1EbS_VA\"",
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 1
},
"items": [
{
"kind": "youtube#video",
"etag": "\"ksCrgYQhtFrXgbHAhi9Fo5t0C2I/Cd8aGZD09NPuGYNumIEozZs2S90\"",
"id": "63flkf3S1bE",
"contentDetails": {
"duration": "PT8M23S",
"dimension": "2d",
"definition": "hd",
"caption": "false",
"licensedContent": false,
"projection": "rectangular"
},
"status": {
"uploadStatus": "processed",
"privacyStatus": "public",
"license": "youtube",
"embeddable": true,
"publicStatsViewable": true,
"madeForKids": false
}
}
]
}
status下的embeddable参数返回true,但是这个视频实际上是不可嵌入的,可以看到here。
当实际使用 iframe API 嵌入视频时,还有更详细的错误消息:
视频不可用 该视频包含来自国际奥委会的内容,该委员会已阻止其在本网站或应用程序上显示。 在 YouTube 上观看
我看不出如何从 YouTube 数据 API 检测到这种情况 - 谁能帮忙?
【问题讨论】:
标签: javascript youtube youtube-api youtube-data-api