Я пытаюсь выяснить, является ли видео YouTube встраиваемым с использованием API данных YouTube 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
}
}
]
}
Параметр embeddable
в поле status
возвращается как истинное, ОДНАКО это видео на самом деле не может быть встроено, как видно здесь .
При фактическом встраивании видео с помощью API iframe также появляется более подробное сообщение об ошибке:
Видео недоступно Это видео содержит материалы из Международного комитета Olympi c, кто заблокировал его показ на этом сайте или в приложении. Смотрите на YouTube
Я не вижу, как можно обнаружить этот случай с помощью API данных YouTube - кто-нибудь может помочь?