我有一个应该提交回自身的 HTML 网页,但如果 method="POST"则总是失败。它适用于 GET,但我们确实需要 POST。我已经删除了所有代码,直到只剩下输入和提交,但它总是出现 405 错误。这个临时网页已尽可能精简。
我正在运行 IIS 7 的 PC 上运行此测试。
<form id="form1" action="PhoneTest3.html" method="POST">
<label for="contactPhoneExt">Contact Phone: </label>
<input id="contactPhoneExt" name="contactPhoneExt" />
<br/>
<input type="submit" value="Submit" />
</form>
我错过了什么?
最佳答案
如果它确实是一个 HTML 页面(而不是隐藏在 .HTML 扩展名后面的脚本页面),那么您不能向其发布内容。
但是,您可以使用 GET 并通过 Javascript 可以读取的命令行传递值。
编辑:更多细节。
GET
通过 URL 传递值。它们成为 URL 的一部分,可以添加书签、复制、轻松修改等。
POST,
另一方面,通过程序员称为 stdin 的东西提供值。
stdin
就像一个程序读取然后处理的文件。可以通过这种方式传递更多的数据,但是需要在服务器上运行的程序才能访问任何这些数据——因此,任何接收发布数据的本地文件必须能够在服务器上运行。
这让人感到困惑,因为可以将 Web 服务器设置为在其文件上显示 .html
扩展名,但这些文件实际上是运行的 PHP
脚本。
关于html - HTTP 错误 405.0 - 方法不允许 - POST 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12221692/