Uncaught SecurityError:无法阅读' contentDocument'属性

时间:2015-10-16 18:00:49

标签: javascript http https

我在我的网站facebook上喜欢插件,我尝试通过代码获取facebook iframe的conetnt:

iframe[0].contentDocument || iframe[0].contentWindow.document;

但是在控制台中我得到了这个错误:

  

Uncaught SecurityError:无法阅读' contentDocument'属性来自' HTMLIFrameElement':阻止了一个有起源的框架" http://like2see.co.il"从访问带有起源的框架" https://www.facebook.com"。请求访问的帧具有" http"的协议,被访问的帧具有" https"的协议。协议必须匹配

我做了一个搜索,我得到了这个答案Console displays Uncaught SecurityError所以我明白,因为我的网站不是https,有一个解决方案,但我不理解他,也许有人知道另一种解决方案或者可以解释我的那个提到那里?

1 个答案:

答案 0 :(得分:1)

除非您禁用浏览器的安全功能,否则不允许您跨域浏览Facebook.com上的iframe内容。

在谷歌浏览器中,您可以使用这些启动标记禁用安全性,但不建议使用

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-running-insecure-content --disable-web-security

此外,您的用户不会禁用其安全性。

你需要找到另一种方法去做你想做的事情。

关于同源策略的此other answer可能有助于阅读。