码迷,mamicode.com
首页 > 其他好文 > 详细

get&post的区别

时间:2019-04-21 16:00:43      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:缓存   静态   方式   rom   查询   字符   请求过程   请求   发送post请求   


get
请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的
GET 请求可被缓存
GET 请求保留在浏览器历史记录中
GET 请求可被收藏为书签
GET 请求不应在处理敏感数据时使用
GET 请求有长度限制 ,大多数浏览器通常都会限制url长度在2K个字节
GET 请求只应当用于取回数据
只接受ASCII字符的参数的数据类型
get效率高
post
查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的
POST 请求不会被缓存
POST 请求不会保留在浏览器历史记录中
POST 不能被收藏为书签
POST 请求对数据长度没有要求
POST支持多种编码方式
为什么get比post效率高
**[最重要原因]**post在真正接受数据之前会先将请求头发送给服务器进行确认,然后才真正发送数据
post 请求过程
1.浏览器请求tcp连接(第一次握手)
2.服务器答应进行tcp连接(第二次握手)
3.浏览器确认,并发送post请求头(第三次握手,这个报文比较小,所以http会在此时进行第一次数据发送)
4.服务器返回100 continue响应
5.浏览器开始发送数据
6.服务器返回200 ok响应
get 请求过程
1.浏览器请求tcp连接(第一次握手)
2.服务器答应进行tcp连接(第二次握手)
3.浏览器确认,并发送get请求头和数据(第三次握手,这个报文比较小,所以http会在此时进行第一次数据发送)
4.服务器返回200 ok响应
get会将数据缓存起来,而post不会。
ps:chrome下和firefox下如果检测到get请求的是静态资源,则会缓存,如果是数据,则不缓存,但是IE这个傻X啥都会缓存起来
post请求包含更多的请求头
post不能进行管道化传输

get&post的区别

标签:缓存   静态   方式   rom   查询   字符   请求过程   请求   发送post请求   

原文地址:https://www.cnblogs.com/yangqiong1989/p/10745389.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!