GET和POST之间的区别.

放弃该放弃的是无奈,放弃不该放弃的是无能,不放弃该放弃的是无知,不放弃不该放弃的是执着。

愿自己能在自己所热爱的道路上越走越远。


下面的几条关于GET和POST请求之间的区别, 是在别的博客看见并记录了下来,但是想不起来是从哪个博客看的了, 所以在这里脸皮厚的就说下面是我自己总结的了~
  1. GET是不安全的,因为在传输过程中,数据被放在URL中,POST请求的所有操作对用来说都是不可见的.
  2. GET传输数据量较小,主要是因为URL长度限制,POST传送的数据量一般不受限制.
  3. GET限制Form表单的数据必须是ASCII字符,而POST支持整个ISO10646字符集.
  4. GET执行效率比POST方法好, GET也是Form提交的默认方法.
  5. GET产生一个TCP数据包,Post产生两个数据包(在某些情况下POST回产生两个数据包,下文将会介绍为什么).
  6. 严格的来说,对于GET请求,浏览器会把HttpHeader和data一并发送出去,服务器响应200放回数据。而对于POST来说,浏览器会先发送header服务器响应continue,浏览器再次发送data,服务器响应200,那么本次POST提交数据是成功的.
  7. GET请求默认会被浏览器主动缓存,而POST不会被浏览器主动进行缓存.
  8. GET请求的参数会保存在浏览器中, 而POST请求的参数不会保存在浏览器中.
  9. GET的执行效率要比POST的好.
关于Get和Post常见的问题.
  1. Post方法比Get方法安全?
    Post相对比较与Get是稍微安全一些的,因为数据在地址栏是不可见的。 然而从传输的角度来说,他们都是不安全的,因为HTTP在网络上都是明文传输逇,只要在网络节点上捉包,就能完整的获取数据报文.
    想要安全的传输,就只有加密使用HTTPS.
  2. Get方法的参数限制是怎么回事?
    关于Get方法参数限制的问题, 我觉得我们应该首先要明白HTTP协议和浏览器解析URL限制的一些问题.
    关于HTTP协议其是没有body和URL的长度限制的,并且对URL限制的大多数是浏览器和服务器的原因。服务器是因为处理厂URL要消耗比较多的资源,为了性能和安全(防止恶意构造长的URL来攻击),所以服务器才会对URL长度加以限制.
  3. 为什么Post方法会产生两个TCP数据包.
    我们在网上的有些文章中能看其会说明POST发送的时候是将header和body分开发送, 先发送header,服务端返回100状态码然后在发送body。
    但是HTTP协议中没有明确说明POST会产生两个TCP数据包,而是实际测试Chrome发现,header和body不会分开发送,所以说POST在发送请求的时候header和body分开发送都是部分浏览器或者框架的请求方法,不属于POST必然的行为.
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值