【问题标题】:How can I get document from iframe from different origin?如何从不同来源的 iframe 获取文档?
【发布时间】:2018-11-14 18:07:58
【问题描述】:

我正在尝试使用 iframe 从 iframe 获取文档

document.getElementById('product-page').contentWindow.document

但我一直在下面出现这个错误,有什么办法可以避免这个错误?

VM1342:1 Uncaught DOMException: Blocked a frame with origin "URL" from 访问跨域框架。 在:1:54

【问题讨论】:

标签: javascript html dom iframe cross-domain


【解决方案1】:

也许它不能因为不同的来源http

如果每个 iframe 的主机名和端口不同,则将获取 CORS

关于CORS的解释,请看程序员的这个回答:https://softwareengineering.stackexchange.com/a/253043/139479

【讨论】:

    【解决方案2】:

    这是同源安全政策的限制, 如果 iframe 来自不同的域/端口/协议,则无法通过 javascript 访问它。

    如果地址的以下部分中至少有一个与您的呼叫网址不同,则认为来源不同:

    <protocol>://<hostname>:<port>/path/to/page.html
    

    但是,如果您同时拥有您要访问的两个网站,则有一种方法,

    请参阅此答案以获取更多信息: SecurityError: Blocked a frame with origin from accessing a cross-origin frame

    【讨论】:

      猜你喜欢
      • 2014-11-28
      • 2015-11-30
      • 1970-01-01
      • 2019-03-11
      • 2011-12-25
      • 2011-04-29
      • 1970-01-01
      • 2012-11-14
      • 1970-01-01
      相关资源
      最近更新 更多