我在我的网站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,有一个解决方案,但我不理解他,也许有人知道另一种解决方案或者可以解释我的那个提到那里?
答案 0 :(得分:1)
除非您禁用浏览器的安全功能,否则不允许您跨域浏览Facebook.com上的iframe内容。
在谷歌浏览器中,您可以使用这些启动标记禁用安全性,但不建议使用:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-running-insecure-content --disable-web-security
此外,您的用户不会禁用其安全性。
你需要找到另一种方法去做你想做的事情。
关于同源策略的此other answer可能有助于阅读。