表单的提交有两种方式:GET和POST,这两种方式的区别是什么?

如题

一、指代不同

1、GET:从指定的资源请求数据。

2、POST:向指定的资源提交要被处理的数据

二、规则不同

1、GET: 请求可被缓存; 请求保留在浏览器历史记录中; 请求可被收藏为书签;请求不应在处理敏感数据时使用; 请求有长度限制; 请求只应当用于取回数据。

2、POST:请求不会被缓存; 请求不会保留在浏览器历史记录中; 不能被收藏为书签; 请求对数据长度没有要求。

三、数据要求不同

1、GET:当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。

2、POST:发送数据无限制。POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。

参考资料来源:百度百科-HTTP请求

参考资料来源:百度百科-post

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-06-14

1、数据回去方式不同:

get是从服务器上获取数据,post是向服务器传送数据。

2、用户看到过程不同:

get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。

post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。

3、服务器端回去方式不同:

对于get方式,服务器端用Request.QueryString获取变量的值。

对于post方式,服务器端用Request.Form获取提交的数据。

4、传送大小不同:

get传送的数据量较小,不能大于2KB。

post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。

5、安全性不同:

get安全性非常低。

post安全性较高。

本回答被网友采纳
第2个回答  2010-01-23
get提交给目标地址后,可以在浏览器的地址栏看到提交的参数,就是问号后面那串
比如 a.php?id=3&type=1

post提交给目标地址后,浏览器地址栏里看不到提交的参数,因而比get方法安全,一般登录时候的密码等信息都需要post提交。

另外,get提交的参数有长度限制,post没有
第3个回答  推荐于2017-11-28
GET 将表单数据附加到请求页面的URL地址后面。GET方法用来传送少量数据, URL的长度限制在8192个字符以内。如果发送的数据量太大,数据将被截断,从而导致意外的处理结果。
POST 在HTTP请求中嵌入表单数据。POST方法可用来发送大量数据,而且对于用户名、密码和信用卡等机密信息的发送,POST方法比GET方法更安全。本回答被网友采纳