GET和POST的区别(全)

get和post区别

首先

  • get 把参数包含在URL中,post 则是通过request body(请求体)中传递参数
  • get 只能进行url编码,post 支持多种编码方式
  • get 使用 url 传输的数据长度是有限的,而 post 可以传输的数据长度是没有限制的
  • get 在浏览器回退时是无害的,而 post 会再次提交
  • get 请求会被浏览器主动缓存,而 post 不会,除非手动去设置。

其次

  • 实际上 get 和 post 是没有大的区别,因为都只是 HTTP 协议中两种发送请求的方法。
  • HTTP 是基于 TCP/IP 协议的关于数据如何在万维网中如何通信的协议
  • HTTP 的底层是 TCP/IP 。所以 get 和 post 底层也是 TCP/IP ,也就是说 get 和 post 都是 TCP/IP 连接,get 和 post 所做的事是一样的。如果想在get加上request body 或者给post 加上 url 参数,技术上完全可行。

最后

  • 重点重点
  • get 只产生一个TCP数据包,而 post 会产生两个TCP数据包
    对于 get 方法,浏览器会把 http header 和 data 一并发出去,服务器响应为200ok,返回数据
    而 post ,浏览器先发送 header ,服务器响应 100 continue ,浏览器再次发送 data ,服务器响应 200 ok ,返回数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值