前言

HTTP 中get、put、post的使用也是蛮多的,有时会突然觉得,他们之间的区别是啥?为啥选择使用呢?

介绍

  1. GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改、增加数据,不会影响资源的内容,即该请求不会产生副作用。无论进行多少次操作,结果都是一样的。
  2. PUT请求是向服务器端发送数据的,从而改变信息,该请求就像数据库的update操作一样,用来修改数据的内容,但是不会增加数据的种类等,也就是说无论进行多少次PUT操作,其结果并没有不同。
  3. POST请求同PUT请求类似,都是向服务器端发送数据的,但是该请求会改变数据的种类等资源,就像数据库的insert操作一样,会创建新的内容。几乎目前所有的提交操作都是用POST请求的。

get和post

这部分转载:https://www.jianshu.com/p/c1737c09f9e5
1、GET参数通过URL传递,POST放在Request body中。

2、GET请求会被浏览器主动cache,而POST不会,除非手动设置。

3、GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。

4、Get 请求中有非 ASCII 字符,会在请求之前进行转码,POST不用,因为POST在Request body中,通过 MIME,也就可以传输非 ASCII 字符。

5、 一般我们在浏览器输入一个网址访问网站都是GET请求

6、HTTP的底层是TCP/IP。HTTP只是个行为准则,而TCP才是GET和POST怎么实现的基本。GET/POST都是TCP链接。GET和POST能做的事情是一样一样的。但是请求的数据量太大对浏览器和服务器都是很大负担。所以业界有了不成文规定,(大多数)浏览器通常都会限制url长度在2K个字节,而(大多数)服务器最多处理64K大小的url。

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

8、在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点。但并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。

HTTP 中get、put、post的介绍相关推荐

  1. tensorflow中的命令行参数介绍

    1.tensorflow中的tf.flags参数介绍 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2019-01-20 21:39: ...

  2. android 布局 站位符,基于android布局中的常用占位符介绍

    大家在做布局文件是肯定会遇到过下面的这种情况 填充出现问题,所以需要用到占位符规范填充 汉字常用占位符: android:layout_width="wrap_content" a ...

  3. C#中的预编译指令介绍

    原文:C#中的预编译指令介绍 1.#define和#undef 用法: #define DEBUG #undef DEBUG #define告诉编译器,我定义了一个DEBUG的一个符号,他类似一个变量 ...

  4. Linux文件系统中的inode节点详细介绍

    一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统 ...

  5. python流程控制语句-Python中流程控制语句的详细介绍

    除了刚才介绍的while语句之外,Python也从其他语言借鉴了其他流程控制语句,并做了相应改变.Python中流程控制语句的详细介绍 4.1 ifStatements 或许最广为人知的语句就是if语 ...

  6. Java 中15种锁的介绍:公平锁,可重入锁,独享锁,互斥锁,乐观锁,分段锁,自旋锁等等...

    http://blog.51cto.com/13919357/2339446 Java 中15种锁的介绍 在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类.介绍的内容 ...

  7. linux中bash的功能主要有,Linux系统中的Bash功能的介绍

    今天小编要跟大家分享的文章是关于Linux系统中的Bash功能的介绍.一个完整计算机的体系结构包括:硬件与软件,而软件又分为系统软件与应用软件,负责对硬件仅需管理与操作的是系统软件的内核部分,用户是无 ...

  8. php正则运用,php中常用的正则表达式的介绍及应用实例代码

    更全面的实例,可以参考 最常用的PHP正则表达式收集整理 //www.jb51.net/article/14049.htm php 正则表达式小结 //www.jb51.net/article/198 ...

  9. python使用get和post方法_python爬虫中get和post方法介绍以及cookie作用

    首先确定你要爬取的目标网站的表单提交方式,可以通过开发者工具看到.这里推荐使用chrome. 这里我用163邮箱为例 打开工具后再Network中,在Name选中想要了解的网站,右侧headers里的 ...

  10. php5中Xdebug配置安装步骤介绍

    摘要: 本文讲的是php5中Xdebug配置安装步骤介绍, Xdebug版本下载 http://www.xdebug.com/download.php 注意在下载Xdebug时我们必须查看自己php版 ...

最新文章

  1. 工作中使用计算机的经验,事业单位考试中计算机工作经历是什么意思
  2. python 的日志logging模块学习
  3. VS2010静态编译
  4. 《转载》Python并发编程之线程池/进程池--concurrent.futures模块
  5. pytorch处理多维输入的问题
  6. java 内存 开发 经验_有一到五年开发经验的JAVA程序员需要掌握的知识与技能!...
  7. Linux CTF 逆向入门
  8. html盒子模型子元素怎么水平占满父元素_立下flag)每日10道前端面试题18 关于【盒模型】十问...
  9. xhtml css 漏 整理
  10. 首届“十大最具价值”互联网创新创业项目遴选榜单丨Xtecher联合中投协权威发布...
  11. matlab chrom(i pos),Matlab遗传算法问题 MATLAB遗传算法
  12. Oracle imp 导入dmp文件到数据库
  13. 使用Python修改图片格式
  14. Excel函数、快捷键等
  15. 如何在局域网使用自定义域名
  16. 2019.7学习总结-目标检测-Python+pytorch
  17. 柯桥韩国人到底一周平均要吃几次泡面?
  18. 这个粽子节and父(付)亲(清)节,你的手机移动认证了没?
  19. 如何正确认识和推进企业数字化转型?
  20. 在电脑无法正常开机情况下如何重装系统

热门文章

  1. jsp页面中的判断是否相等(c标签中的if)
  2. 百度AI---人脸对比(前端拍照上传后端进行对比,后端调用百度接口返回对比信息)
  3. 如何限制上传附件的格式?
  4. 周记0051:0052
  5. 疯壳-MTK智能电话手表开发整板测试
  6. 国人为什么这么轻视技术?
  7. 智能医疗机器人:创新技术推动医疗领域的发展
  8. foxmail登录outlook账号
  9. Supervised learning/ Unsupervised learning监督学习/无监督学习
  10. 给予DeepMatch框架进行召回实战