为什么post方法没用?

时间:2014-01-09 09:25:39

标签: html post asp-classic get

GET - 从指定资源中请求数据

POST - 将要处理的数据提交到指定资源

为什么在以下html文件中,这意味着向服务器发送消息(使用post方法),没有消息从服务器获取。在我看来,只有post方法可以在下面的html中使用。为什么编码器使用get方法?

please see w3schools

<!DOCTYPE html>
<html>
<body>

<form name="input" action="html_form_action.asp" method="get">
First name: <input type="text" name="FirstName" value="Mickey"><br>
Last name: <input type="text" name="LastName" value="Mouse"><br>
<input type="submit" value="Submit">
</form> 

<p>If you click the "Submit" button, the form-data will be sent to a page called "html_form_action.asp".</p>

</body>
</html>

3 个答案:

答案 0 :(得分:2)

我认为您对 GET POST

存在误解

获取

使用GET作为方法时,表单会将数据提交为URL-Parameters,如:

html_form_action.asp?FirstName=Mickey&LastName=Mouse

这使得发送的数据在浏览器的URL框中对普通用户可见。


发表

当使用POST作为方法时,您的表单也会提交数据,但它会将其隐藏在URL中并作为普通用户看不到的隐藏数据发送,您的网址将只是

html_form_action.asp

但是在您的asp页面中,您仍然可以访问POST数据

POST主要用于记录

时发送密码等敏感数据

编辑:另请查看以下资源,它会解释很多:http://www.diffen.com/difference/GET_(HTTP)_vs_POST_(HTTP)

答案 1 :(得分:1)

您对GET与POST的描述不正确。两种方法可以将数据发送到服务器,可以从服务器获取响应数据。在大多数情况下,某些数据发送到服务器并获得一些响应。通常,但不一定,对GET请求的响应是某些查询的结果(如匹配输入数据的条目),对POST请求的响应是某些操作成功或失败的声明(如向数据库添加数据,或者购买)。

通常,GET只应用于没有副作用的请求(对发送和获取请求的操作之外的事务状态没有影响),或者更一般地说,如果请求是幂等的,即 - 多个相同请求的效果与单个请求的效果相同。对于其他请求,应使用POST。但这不是一项法律,只是一项建议。即使是纯粹的信息查询,也有使用POST的技术原因;看我的页面Methods GET and POST in HTML forms - what's the difference?

因此,对于具有两个文本输入字段并使用方法GET的表单,没有什么奇怪的。我们通常希望它用于信息检索 - 从某些数据存储库获取与所使用的特定输入相匹配的信息。但这不能保证。

答案 2 :(得分:0)

你的问题究竟是什么?! GET和POST是如何将数据提交到服务器的两种不同方法。如果您选择GET,它将最终使用动作脚本在目标栏中进行URL编码,如果您选择POST,它将向动作脚本发送POST请求。无论哪种方式,你都会从动作脚本中获得一些东西。