我在AMP网站上有一个<form>
,它不起作用。
控制台继续显示此错误消息:
“ POST https://www.example.com/submit?__amp_source_origin=https%3A%2F%2Fwww.javwebnet.com 403”
我的表单页面位于example.com/contactus
中。
表单如下:
<form method="post" action-xhr="/submit.php" target="_top">
<input type="text" name="name" required>
<input type="email" name="email" required>
<input type="submit" value="submit">
</form>
任何帮助将不胜感激
答案 0 :(得分:0)
要确保对AMP页面的请求和响应有效且安全,必须遵循以下条件:
如果请求是状态更改(例如POST),请检查来源是否来自来源来源(通过__amp_source_origin)(资源链接)。验证CORS请求后,生成的HTTP响应必须包含以下标头: 访问控制允许来源: AMP访问控制允许源来源: Access-Control-Expose-Header:AMP-访问控制-允许源-来源
对于处理可能会更改系统状态的状态更改请求,请检查以下内容:
如果设置了Origin标头:
如果原点与以下值之一不匹配,请停止并返回错误响应:
其中*表示通配符匹配,而不是实际的星号(*)。
如果未设置Origin标头:
以下资源链接会有所帮助:
https://ampbyexample.com/components/amp-form/ https://github.com/ampproject/amphtml/blob/master/extensions/amp-form/amp-form.md#security-considerations https://www.ampproject.org/docs/fundamentals/amp-cors-requests https://github.com/ampproject/amphtml/blob/master/spec/amp-cors-requests.md