YouTube Iframe API已“阻止了包含来源的框架”#39;仅在Safari

时间:2017-01-16 18:25:45

标签: iframe youtube-api

我像这样使用iframe API

<iframe id="youtubePlayer" type="text/html" width="100%" height="auto" src="http://www.youtube.com/embed/someid?enablejsapi=1&origin=http://myurl.com" frameborder="0"></iframe>

请注意,我已将src更改为http并添加了origin,但仍然出现以下错误:

  

块引用   阻止了一个有起源的框架&#34; https://www.youtube.com&#34;从访问带有起源的框架&#34; http://myurl.com&#34;。请求访问的帧具有&#34; https&#34;的协议,被访问的帧具有&#34; http&#34;的协议。协议必须匹配。

问题只发生在 Safari 中。我做了一些调试,似乎Sf()只能在www-embed.js中的Safari中调用。

谢谢!

1 个答案:

答案 0 :(得分:2)

看起来iFrame上的Safari实现存在缺陷。在Safari上,YouTube iFrame API official page提供相同的错误消息。因此,目前无法绕过这种情况,直到Safari修复此问题。