doGet和doPost的区别

关于doGet和doPost的几种区别:

1、form运行方式

  当form框里面的method为get时,执行doGet方法

  当form框里面的method为post时,执行doPost方法

2、生成方式

  get方式有四种:

    (1)直接在URL地址栏中输入URL,

    (2)网页中的超链接

    (3)form中的method为get时

    (4)form中method为空时,默认是get方式

  post暂时只知道一种:

    (1)form中method属性为post

3、数据传输方式:

  get方式:表单数据存放在URL地址后面,会不安全,所有get方式提交时HTTP中没有消息体。

  post方式:表单数据存放在HTTP协议的消息体中以实体的方式传送到服务器中。

  

  get时把参数数据队列加到提交表单的action属性指定的URL中,值和表单内各个字段一一对应,

  在URL中可以看到。post时通过HTTP post机制,将表单内各个字段与其内容放置

  在HTML header内一起传送到action属性所指的URL地址。

4、服务器获取数据方式

  get方式:服务器采用request.QueryString来获取变量的值

  post方式:服务器采用request.Form来获取数据

5、传送的数据量

  get方式:数据量长度有限制,一般不超过2kb。因为是参数传递,且在地址栏中,故数据量有限制

  post方式:适合大规模的数据传送,因为是以实体的方式传送的

6、安全性

  get方式:安全性差。因为是直接将数据显示在地址栏中,浏览器有缓冲,可记录用户信息,

      所以安全性低。

  post方式:安全性高。因为post方式提交数据时采用的HTTP post机制,是将表单中的字段

      与值放置在HTTP Header内一起传送到action所指的URL中,用户是看不见的。

7、在用户刷新时

  get方式:不会有任何提示

  post方式:会弹出提示框,问用户是否重提交

在做数据查询是,建议用get方式,而在做数据添加、修改或删除时,建议用post方式!

乾坤未定,你我皆是黑马
原文地址:https://www.cnblogs.com/liuqijia/p/11530329.html