2016-06-21 2 views
1

YouTube-Kanäle können die Wiedergabe ihrer Videos auf einem eingebetteten YouTube-Player verbieten. Ich arbeite mit benutzergenerierten Inhalten, wobei der Nutzer ein Video seiner Wahl auswählt, das eingebettet werden soll (mit der YouTube iFrame API), und ich muss dem Nutzer erklären, warum sein Video nicht eingebettet werden kann, also muss ich dies erkennen bestimmten Grund für das Scheitern, anstatt einfach zu erkennen, dass das Video nicht abgespielt wird. Ich möchte dies überprüfen, bevor ich das Video tatsächlich dem Player zuführe.Wie kann ich überprüfen, ob ein YouTube-Video eingebettete Wiedergabe ermöglicht?


Ich frage mich, wenn ich die Informationen als Antwort auf eine v3 Datenabfrage wie die bekommen kann ich zur Zeit mache:

$.getJSON('https://www.googleapis.com/youtube/v3/videos?key=***&part=snippet,contentDetails,statistics&id=' + videoID, function(data, status, xhr) { ... 

I something like this talked about involving the v2 data API, here.

sah Gibt es eine Möglichkeit zu überprüfen, ob das Video zuvor als eingebettete Datei abgespielt wurde?

Antwort

0

Sie sollten ein onError 101 event.

Sie auch Videos filtern videoEmbeddable in einer Suche mit bekommen.

+0

Perfekt. Ich habe das 101-Fehlerereignis in den Dokumenten nicht bemerkt, danke –

+0

Hey von was [Ich lese über die API v2] (https://www.quora.com/With-JavaScript-is-there-a-way-to-detect Wenn Sie das Video eingebettet haben, ohne es tatsächlich abzuspielen (ich möchte es vor dem Abspielen überprüfen, nicht nachdem ich es dem Player zugeführt habe) und ich frage mich, ob dies mit der v3 API getan werden kann. Zum Beispiel habe ich eine Abfrage-Zeichenfolge wie folgt: 'https://www.googleapis.com/youtube/v3/videos?key=***&part=snippet,contentDetails,statistics&id= '+ videoID' - könnte ich irgendwie bekommen info mit Ergebnissen zu einer Abfrage wie folgt enthalten? –

+0

['video'] (https://developers.google.com/youtube/v3/docs/videos) hat eine Eigenschaft' status.embeddable'. –

Verwandte Themen