HTTP协议之get与post的区别

一、get与post的定义

HTTP协议定义很多与服务器交互的方法,最基本有四种:GET、POST、PUT、DELETE

  • GET:获取资源的
  • POST:提交或更新服务器上的资源

二、提交数据上的差异

  • GET:提交的数据一般会放在url后面,用问号(?)来分割,并以key=value方式连接
  • POST:提交的数据基本是放在body之中

三、提交数据大小的限制

  • GET:提交的数据大小是限制的,浏览器对url长度是有限制的,不可以无限期输入一个url地址,否则浏览器是承受不了
  • POST:提交的数据是body中,是没有限制的

四、取得变量值的差异

  • GET : 是通过Request.QueryString获取变量值
  • POST:是通过Request.Form获取的

五、安全问题

  • GET提交的数据会带来安全隐患,比如在进行一个登录页面,因为用get的方式会把用户名和密码都显示在url上,这很明显不是很安全的做法,同时如果页面可以缓存的话,还可以缓存访问到目前的机器,通过历史记录就可以获取用户名和密码,这是很危险的,而POST方式则不会出现这些情况。

猜你喜欢

转载自blog.csdn.net/hzw2017/article/details/79605670