2016-04-13 15 views
0

Ich habe versucht, den Youtube in einem iframe einzuschließen, aber es scheint leer zu sein. Dies ist der Code, den ich überprüft habe mityoutube auf iframe funktioniert nicht

<!DOCTYPE html> 
<html> 
<body> 

<iframe src="http://www.youtube.com"> 
<p>Your browser does not support iframes.</p> 
</iframe> 

</body> 
</html> 

Warum dies geschieht? und was soll ich tun, damit es funktioniert?

Antwort

1

Überprüfen Sie Ihre console. Es wird höchstwahrscheinlich eine Nachricht wie zum Beispiel haben:

Weigerte sich, 'https://www.youtube.com/' in einem Rahmen anzeigen, weil es 'X-Frame-Optionen' zu 'SAMEORIGIN' gesetzt.

Lesen Sie mehr über X-Frame-Options here:

Der X-Frame-Options-Response-Header

Der X-Frame-Options HTTP-Response-Header verwendet werden kann, um anzuzeigen, ob ein Browser sollte erlaubt sein, eine Seite in einer <frame>, oder <object> zu rendern. Websites können dies verwenden, um Clickjacking-Angriffe zu vermeiden, indem sichergestellt wird, dass ihr Inhalt nicht in andere Websites eingebettet ist.

[...]

SAMEORIGIN

Die Seite kann nur in einem Rahmen auf dem gleichen Ursprung wie die Seite selbst angezeigt.

[...]

Mit anderen Worten: [...], wenn Sie SAMEORIGIN angeben, können Sie immer noch die Seite in einem Rahmen verwendet werden, solange die Website in einem Rahmen, der die gleiche ist wie die eine dient der Seite.

lange Geschichte kurz: Youtube Sie ihre Website einbinden will nicht (Anmerkung: Ich bin über Webseiten sprechen hier, nicht Videos) und explizit einen HTTP-Header zu kommunizieren, dass an Browser eingestellt .

Wenn Sie ein Video anzeigen/einbetten möchten, verwenden Sie ihren Code, der unter jedem Video unter Share »Embed ist.

<iframe width="1280" height="720" 
     src="https://www.youtube.com/embed/dQw4w9WgXcQ?rel=0&amp;showinfo=0" 
     frameborder="0" allowfullscreen> 
</iframe> 
+0

ich versucht habe, diese aber es führt gerade das Video zu zeigen. Gibt es eine Möglichkeit, dass ich die ganze Seite zusammen mit den vorgeschlagenen Videos anzeigen kann? Gibt es einen anderen Weg, den ich für andere als iframe gehen kann? –

+0

'* Gibt es eine Möglichkeit, dass ich die ganze Seite zusammen mit den vorgeschlagenen Videos anzeigen kann *': Selbst wenn du könntest (es gibt sicherlich Möglichkeiten wie die Seite zu proxy): du wirst wahrscheinlich gegen die [Youtube TOS] verstoßen (https://www.youtube.com/static?template=terms). Am besten nutzen Sie die [YouTube-APIs] (https://developers.google.com/youtube/), aber ich bin mir ziemlich sicher, dass es unmöglich (oder sehr schwer) sein wird, * von Ihren Besuchern * vorgeschlagene Videos zu erhalten. Jemand korrigiert mich, wenn ich falsch liege. – RobIII

0

können Sie dieses versuchen:

<!DOCTYPE html> 
<html> 
<body> 

<iframe allowfullscreen="true" src="http://www.youtube.com/embed/c0MZ2bTtBm0?autoplay=1&amp;autoplay=1" style="width: 100%; height: 100%; opacity: 1; display: block;" class="ms-slide-video"></iframe> 

</body> 
</html> 
Verwandte Themen