首页 > http > http协议中get和post请求的区别

http协议中get和post请求的区别

2015年8月10日 453 人阅读 发表评论 阅读评论

最关键的不同在于传输请求数据的位置不同,get请求使用request_line中的url来承载请求数据,而post请求则即可以使用request_line中url,也可以使用request_body来承载请求数据。

各个不同点如下:

1、请求数据传输位置不同

get:携带在request_line的url中。

post:即可以携带在requiest_line的url中,也可以携带在request_body中。

2、请求数据长度的限制

get:一般长度较短,客户端的浏览器(如IE限定url长度为2083字节,opera 是4050, Netscape 是8192)有限制,服务端也有限制(如果url长度过长,http服务器会报414错误)。

post:一般长度较长(请求数据携带在request_body),具体的长度限制不同的客户端和服务端有所不同。

3、操作语义不同

get:从服务器中获取数据,但实际上也可以使用get方法向服务器传送数据。

post:向服务器传送数据。

4、安全性

get:不安全,请求数据携带在url中浏览器地址栏可以显示,重要的请求数据容易被窃取。

post:较为安全,但不是绝对的安全,虽然请求参数不携带在url中,但如果不使用https,其实get和post都是无秘密可言的,因为http是明文协议,随便抓个包,什么请求数据都看到了。

分类: http 标签: , ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.