表单中GET与POST的区别

1、本质

Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求。

2.服务器端获取值的方法

get方式提交的数据,服务器端使用request.QueryString获取变量的值

post方式提交的数据,服务器端使用request.Form获取数据

3.安全性

get方式安全性低,post方式较安全。

4、效率

post方式执行效率要比get方式差一些。

5.机制

get是把参数数据队列加到提交表单的action属性所指的URL中进行传递,并且这些在URl中对用户来说是可见的

post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到action属性所指的URL地址,对于用户来说,这是透明的。

6.大小

get一般的浏览器有对URL长度进行限制,一般不大于2KB,适合进行小数据传递

POST理论上是没有大小限制的,适合进行大数据传递

总结:

  1. GET在浏览器回退时是无害的,而POST会再次提交请求。
  2. GET产生的URL地址可以被Bookmark,而POST不可以。
  3. GET请求会被浏览器主动cache,而POST不会,除非手动设置。
  4. GET请求只能进行url编码,而POST支持多种编码方式。
  5. GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
  6. GET请求在URL中传送的参数是有长度限制的,而POST么有。
  7. 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
  8. GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
  9. GET参数通过URL传递,POST放在Request body中。

 

建议:1、get方式的安全性较post方式要差一些,所以,包含一些重要的信息的话,简易使用post数据提交方式

2、在做查询统计的时候,使用get方式要更好一些;而在做数据的添加,修改或删除操作时,建议使用post数据提交方式

posted @ 2017-03-07 15:17  陈浩宇人呢  阅读(298)  评论(0编辑  收藏  举报