【问题标题】:Form submission failed:: Response must contain the AMP-Access-Control-Allow-Source-Origin header​表单提交失败:: 响应必须包含 AMP-Access-Control-Allow-Source-Origin 标头​
【发布时间】:2019-08-11 04:03:20
【问题描述】:

我想使用amp-form 提交表单。将文本/数据发送到同一域内的数据库。

提交一个简单的表单后,我收到了这个未捕获的错误: Form submission failed:: Response must contain the AMP-Access-Control-Allow-Source-Origin header​​​.

我在 Google 上搜索过,大多数答案都指向我在 .htaccess 文档中设置标题,如下所示:

Header set Access-Control-Allow-Origin "*"

我正在继续寻找答案。

【问题讨论】:

  • 通过添加 header('AMP-Access-Control-Allow-Source-Origin: URL') 解决您的问题; ?
  • 是的,它有@Mr.Rebot。一周前我发现了它,但它仍然让我在使用amp-form 时遇到了更深层次的问题。所以我决定用一个表单来绕过amp的页面。
  • 我在通过 post 方法提交表单时遇到了类似的问题。错误:未捕获的错误:表单提交失败::返回的 AMP-Access-Control-Allow-Source-Origin 不等于当前:localhost/WebApplication1/DefaultAMP.aspx vs localhost​​​。请建议我需要设置的确切标题这种情况。
  • 即使在将 AMP-Access-Control-Allow-Source-Origin 设置为 __amp_source_origin 参数的值后,我也遇到了同样的问题 - 观察网络流量显示响应中设置了标头。将 Access-Control-Expose-Headers 标头值设置为 AMP-Access-Control-Allow-Source-Origin 解决了它;不确定,但我怀疑这会告诉浏览器将该标头传递给客户端 JS。

标签: amp-html


【解决方案1】:

出于安全原因,AMP 要求某些标头出现在跨域 HTTP 响应中,包括 AMP-Access-Control-Allow-Source-Origin

完整列表请参阅CORS Requests in AMP 文档。

【讨论】:

  • 如果您想了解更多关于为特定平台实施 CORS 的信息follow this link
猜你喜欢
  • 2019-05-25
  • 2018-06-27
  • 2018-07-15
  • 2018-05-18
  • 2018-08-01
  • 2015-05-04
  • 1970-01-01
  • 2017-12-28
  • 2019-10-10
相关资源
最近更新 更多