我正在使用youtube iframe api并获得以下控制台错误,该错误与阻止原始http://www.youtube.com的框架有关。想知道是否有人可以解释为什么这个错误只出现在Chrome控制台中,是否有任何方法可以防止这种情况发生?
错误:
阻止原始“http://www.youtube.com”的框架访问原点为“http://youtubetest.appspot.com”的框架。协议,域和端口必须匹配。
答案 0 :(得分:10)
我有一个类似的错误,其中JS错误是:
阻止原始“https://www.youtube.com”的框架访问 原点为“http://www.yourdomain.com”的框架。请求的框架 访问具有“https”协议,被访问的帧具有 “http”协议。协议/协议必须匹配,YouTube有CORS (跨源资源共享)已启用跨域。
尝试删除YouTube iframe广告代码中的https://
?
您还可以查看关闭的iframe代码。 iframe代码不是单件代码,必须以</iframe>
而不是/>
结尾。
答案 1 :(得分:6)
今天看来,使用YouTube放入他们自己的嵌入式代码SNIPPET TOOL的无协议“//youtube.com”网址会引发协议匹配错误。 (叹气)本周早些时候工作正常。
如果我将https:添加到嵌入网址,它会停止抛出错误并且iframe JS API可以正常工作。它将继续抛出“Blocked a frame with origin ...”错误,但JS API将按预期运行。