【问题标题】:Refused to get unsafe header "AMP-Access-Control-Allow-Source-Origin"拒绝获取不安全的标头“AMP-Access-Control-Allow-Source-Origin”
【发布时间】:2017-12-28 10:27:45
【问题描述】:

我在 iframe 中带有 Google 地图的页面中使用 amp-iframe。该页面运行良好,并且在我尝试过的所有浏览器上都可以通过验证,MacOS 上的 Safari 除外。

我在控制台中收到此错误:

Refused to get unsafe header "AMP-Access-Control-Allow-Source-Origin"

我尝试将这些标头添加到我的服务器:

Header set Access-Control-Allow-Origin *
Header set Access-Control-Allow-Headers AMP-Access-Control-Allow-Source-Origin
Header set Access-Control-Expose-Headers AMP-Access-Control-Allow-Source-Origin
Header set AMP-Access-Control-Allow-Source-Origin https://example.com

但是,我仍然看到同样的错误。它只发生在 Safari 中。似乎与 CORS 有关。有人可以帮忙吗?

【问题讨论】:

  • 基于此link,使用 CORS 时仅暴露 simple response headers。 Safari 10 中还有一个reported bug。但是,据说它不应该影响应用程序的运行时。这只是logconsole.error
  • 如果您仍然遇到此问题,您能否发布指向该问题的示例页面的链接?

标签: amp-html google-amp


【解决方案1】:

我在嵌入 Google 日历时遇到了类似的问题,当我将 allow-scriptsallow-same-origin 添加到 sandbox 属性时,它得到了解决。此示例来自<amp-iframe> 文档:

<amp-iframe width="200" height="100"
    sandbox="allow-scripts allow-same-origin"
    layout="responsive"
    frameborder="0"
    src="https://www.google.com/maps/embed/v1/place?key=AIzaSyDG9YXIhKBhqclZizcSzJ0ROiE0qgVfwzI&q=iceland">
</amp-iframe>

如果这不能解决您的问题,您能否编辑您的问题以包含您的 &lt;amp-iframe&gt; 代码以便我们提供帮助?

【讨论】:

    猜你喜欢
    • 2018-08-01
    • 2019-05-25
    • 2014-05-06
    • 2019-10-10
    • 2018-05-18
    • 1970-01-01
    • 2018-06-27
    • 2018-07-15
    • 2016-01-11
    相关资源
    最近更新 更多