GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。
最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。

正常GET和POST的区别的“标准答案”

GET在浏览器回退时是无害的,而POST会再次提交请求。
GET产生的URL地址可以被Bookmark,而POST不可以。
GET请求会被浏览器主动cache,而POST不会,除非手动设置。
GET请求只能进行url编码,而POST支持多种编码方式。
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
GET请求在URL中传送的参数是有长度限制的,而POST么有。
对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
GET参数通过URL传递,POST放在Request body中。

如果我告诉你GET和POST本质上没有区别你信吗?

GET和POST是什么?HTTP协议中的两种发送请求的方法。
HTTP的底层是TCP/IP。所以GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。GET和POST能做的事情是一样一样的。你要给GET加上request body,给POST带上url参数,技术上是完全行的通的。
GET和POST还有一个重大区别,简单的说:
GET产生一个TCP数据包;POST产生两个TCP数据包。

对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

也就是说,GET只需要汽车跑一趟就把货送到了,而POST得跑两趟,第一趟,先去和服务器打个招呼“嗨,我等下要送一批货来,你们打开门迎接我”,然后再回头把货送过去。
因为POST需要两步,时间上消耗的要多一点,看起来GET比POST更有效。因此Yahoo团队有推荐用GET替换POST来优化网站性能。但这是一个坑!跳入需谨慎。为什么?

1. GET与POST都有自己的语义,不能随便混用。
2. 据研究,在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点。
3. 并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。

关注

感谢阅读,如果这篇文章帮助了您,欢迎 点赞收藏,关注转发 哟。您的帮助是我们前行的动力,我们会提供更多有价值的内容给大家... 谢谢!

combobox的method是get为什么发的请求是post_深入理解http get和post请求的区别,读完之后,大部分程序员收藏了...相关推荐

  1. Java程序员掉发系列——程序员的成长之路

    文章目录 一:Java语言学习 二:J2EE方面 三:理解并能合理运用设计模式 四:注重用户体验 五:自动测试与软件配置管理(SCM)实现 六:熟悉常见的网络通信协议 七:面向市场,永远对新技术保持渴 ...

  2. 程序员发长贴讲述真实某多多:薪水高,普调高,环境差,厕所少!强制去买菜,全行业竞业,穿拖鞋会被暴力执法!...

    某多多作为一家新兴互联网大厂,是众多程序员曾经工作.正在工作和想去工作的地方.关于某多多的真实情况,网上一直众说纷纭,争论不休,有吹有黑,我们之前也发过不少关于某多多的文章.最近有个已经离职的前某多多 ...

  3. 某程序员为让公司裁掉自己,消极怠工!故意旷工!但公司坚持不裁他,领导:给你发工资,就是不裁你!...

    被裁员和主动辞职最大的区别是什么?自然是能不能拿到补偿金. 许多人为了拿到N+1的补偿,绝对不会主动辞职离开公司,一定要想办法被裁掉.一个程序员小哥哥为了被公司裁,做尽"坏事",包 ...

  4. 程序员吐槽职场戏精:凌晨三点半发周报,太装了!

    职场其实就是一个小小的江湖,为了在职场上生存,每个人都在极力的表现自己,甚至表演自己.但凡事适可为止,有些人表演过头就容易引起周边人的反感.一名来自互联网大厂的程序员在论坛上吐槽称,其身边的有个同事简 ...

  5. 不发项目奖金,程序员怒删代码,被判 5 个月!

    整理 | 王晓曼 责编 | 伍杏玲 出品 | 程序人生 (ID:coder _life) 之前CSDN 报道过,一外国公司因缩减专利奖金,员工拒绝提交代码的故事:程序员怒了!你敢削减专利奖金,我敢拒绝 ...

  6. ​10.24,华为鲲鹏要为程序员发福利!

    号外号外 1024,中国程序员共同的节日即将到来!1024是2的十次方,二进制计数的基本计量单位之一,程序员们就像是一个个的1024,用0和1搭建起神奇的科技世界. 但程序员改变世界的背后的酸楚,只有 ...

  7. 博客园博客停止更新的通知,程序员生存定律会在CSDN发完

    CSDN博客地址:http://blog.csdn.net/leezy_2000 至于为什么会离开这里,大家看下面的信吧,这类事情弄的我太累了. 完全是邮件拷贝,没做过一字修改,事情发生在六月十一日, ...

  8. 程序员养发(老师付推荐)

    养发的基础方法(说的好,但是太难做到) 一.排解压力,都知道程序员工作压力大,操心多,这很容易引起脱发.那就要平时多放松放松,简单的运动是很好的放松方式,还能健身. 二.保持良好作息,熬夜容易引起脱发 ...

  9. 阿里程序员发70多万年终奖表示略感失望,网友:不要的话请给我!

    阿里程序员发70多万年终奖表示略感失望,网友:不要的话请给我! 新生前端 03-24 18:25 关注 阿里开始发年终奖了,不少阿里员工开始在网络论坛上相互打探消息,看看自己拿的是多还是少.因为阿里的 ...

  10. 左手代码,右手带娃,还能发十几篇 paper,程序员女神是如何炼成的?

    作者 | 李磊       责编 | 欧阳姝黎 出品 | CSDN(ID:CSDNnews) 一道简单的数学题:如果程序员中男女比例是 9:1,普通程序员与优秀程序员的比例也是 9:1,那么一位优秀的 ...

最新文章

  1. WFP在包含fwpmu.h头的时候出错
  2. Fsharp 类中的空字段
  3. 浏览器时间久了重新登录_以登录为例讲解什么是全面的测试设计
  4. struts2教程(4)--类型转换
  5. 一些iis配置相关报错的参考
  6. Socket UDP无连接通信
  7. Burpsuite学习(4) 1
  8. 用aspnet_compiler发布网站 (转载:My way of my life )
  9. [css] 举例说明常用的cursor取值有哪些?
  10. Linux中使用GDB调试NS2
  11. python控制mt4自动交易软件排名_股票自动交易软件排名
  12. c语言dummy作为参数,C语言中的dummy函数
  13. 基本概念学习--TaskList(任务列表)
  14. Java中的各种数据类型的转换
  15. 人工智能兴起的条件_跟我说规矩。 AI受虐狂的兴起
  16. mysql复杂查询的书_mysql 复杂查询
  17. 读小说赚钱吗?这个年入百万
  18. 【论文翻译 假新闻检测综述 HICSS 2019】Can Machines Learn to Detect Fake News? A Survey Focused on Social Media
  19. Excel删除重复数据java_合并Excel范围中的数据,删除空白和重复项
  20. C语言分支语句if else

热门文章

  1. Nginx+Memcached+Tomcat集群配置
  2. 如何在 Internet Explorer 中禁用和使用 ADODB.Stream 对象
  3. 华为荣耀9x怎么解账户锁_跟华为毫无关系的荣耀为何不值得买?
  4. python 拍照搜题_大学慕课2020用Python玩转数据答案搜题公众号
  5. java 接口和抽象类的区别_Java中的接口与抽象类:有什么区别?
  6. mysql数据库中更新数据表用以下哪一项_删除数据表用以下哪一项()_学小易找答案...
  7. js基础知识汇总06
  8. Java Greedy Snake, need to be updated
  9. jupyter notbook远程连接配置(Ubuntu16.04)
  10. pandas常用函数总结