标准Http协议支持六种请求方法,即:

1,GET

2,HEAD

3,PUT

4,DELETE

5,POST

6,OPTIONS

但其实我们大部分情况下只用到了GET和POST。如果想设计一个符合RESTful规范的web应用程序,则这六种方法都会用到。不过即使暂时不想涉及REST,了解这六种方法的本质仍然是很有作用的。大家将会发现,原来web也是很简洁明了的。下面依次说明这六种方法。

1,GET:GET可以说是最常见的了,它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。

2,HEAD:HEAD和GET本质是一样的,区别在于HEAD不含有呈现数据,而仅仅是HTTP头信息。有的人可能觉得这个方法没什么用,其实不是这样的。想象一个业务情景:欲判断某个资源是否存在,我们通常使用GET,但这里用HEAD则意义更加明确。

3,PUT:这个方法比较少见。HTML表单也不支持这个。本质上来讲,

PUT和POST极为相似,都是向服务器发送数据,但它们之间有一个重要区别,PUT通常指定了资源的存放位置,而POST则没有,POST的数据存放位置由服务器自己决定。

举个例子:如一个用于提交博文的URL,/addBlog。如果用PUT,则提交的URL会是像这样的”/addBlog/abc123”,其中abc123就是这个博文的地址。而如果用POST,则这个地址会在提交后由服务器告知客户端。目前大部分博客都是这样的。显然,PUT和POST用途是不一样的。具体用哪个还取决于当前的业务场景。

4,DELETE:删除某一个资源。基本上这个也很少见,不过还是有一些地方比如amazon的S3云服务里面就用的这个方法来删除资源。

5,POST:向服务器提交数据。这个方法用途广泛,几乎目前所有的提交操作都是靠这个完成。

6,OPTIONS:这个方法很有趣,但极少使用。它用于获取当前URL所支持的方法。若请求成功,则它会在HTTP头中包含一个名为“Allow”的头,值是所支持的方法,如“GET,

POST”。

其实还有一个TRACE方法,不过这个基本上不会用到,这里就不介绍了。

以上的六种方法,我们可以跟数据库的CRUD增删改查操作对应起来: CREATE :PUT READ:GET

UPDATE:POST DELETE:DELETE

这样一来就实现了HTTP和数据库操作(其实不光是数据库,任何数据如文件图表都是这样)的完美统一,这也是REST的精髓之一。

转载于:https://www.cnblogs.com/xtdxs/p/6603330.html

解析HTTP协议六种请求方法相关推荐

  1. 解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别

    转载自  解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别 标准Http协议支持六种请求方法,即: 1.GET 2.POST 3.PUT 4.Delete 5. ...

  2. php 解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别

    GET: 请求指定的页面信息,并返回实体主体.HEAD: 只请求页面的首部.POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体.PUT: 从客户端向服务器传送的数据取代指定的文档 ...

  3. http接口测试:了解协议、请求方法、响应状态码

    http接口测试:了解协议.请求方法.响应状态码 接口在各个系统间的重要性无需重申,主要体现在外部系统与系统之间以及内部各子系统之间的交互点.通过这些特定的交互点和一些特殊的规则标准(协议)来进行系统 ...

  4. HTTP协议的六种请求方法

    抛砖引玉,聊下概念性的东西先: HTTP协议 (Hyper Text Transfer Protocol) HTTP是一个基于TCP/IP通信协议来传递数据,包括html文件.图像.结果等,即是一个客 ...

  5. HTTP协议中常见请求方法以及一些常见错误代码

    GET: 请求指定的页面信息,并返回实体主体. HEAD: 只请求页面的首部. POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体. PUT: 从客户端向服务器传送的数据取代指定 ...

  6. HTTP协议中POST、GET、HEAD、PUT等请求方法及相应值得含义

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 请求方法是请求一定的Web页面的程序或用于特定的URL.可选用下列几种: GET: 请求指定的页面信 ...

  7. HTTP协议漫谈 - HTTP协议请求方法

    前言 在上一篇文章<HTTP协议漫谈 - HTTP协议历史和报文结构>中介绍了HTTP协议的历史和版本变化,以及HTTP协议报文的总体结构. 按照HTTP/1.1 RFC文档中的定义,HT ...

  8. TCP/IP协议族(一) HTTP简介、请求方法与响应状态码

    接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的.接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单 ...

  9. 常用的HTTP请求方法

    前端日常发送HTTP请求最长用到GET, POST两种方法,如果是在一个符合RESTful设计规范的应用中, 常用到5个方法:GET.POST.PUT.PATCH.DELETE. PS: RESTfu ...

  10. HTTP简介、请求方法与响应状态码

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! Https相关的文章,请看这一篇:TCP.IP协议族之数字签名与HTTPS详解 接下来想系统的回顾 ...

最新文章

  1. maven工程出现java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener...
  2. redis源码笔记-endian
  3. android学习之-简单对话框
  4. 【SpringBoot】SpringBoot整合SpringDataJPA及基本使用
  5. RedisTemplate value序列化导致的问题
  6. MVC初学 - The type or namespace name 'DbContext' could not be found
  7. 喵喵的支付宝小程序登录
  8. 系统的性能瓶颈,排查该从哪些方面入手,如何定位?
  9. 计算机辅助初中数学教学,计算机辅助数学教学的优势
  10. Linux系统与服务构建(一)
  11. 从官方例程深度学习海思SDK及API(2)
  12. 李宏毅机器学习笔记——深度学习
  13. 秒开路由sam1_野狼SAM机架精编版V1.0官方版-独木成林
  14. PDF 解锁(unlock)
  15. 案例|工业物联网解决方案•泵站智慧云平台
  16. 【源码】自主机器人路径规划仿真器(FAMU-FSU工程学院自主移动机器人项目)
  17. 征服统计学08|天天在用的P值到底是个啥?
  18. 解决zabbix页connot connect to database;MariaDB 导入数据时 ERROR 1118 (42000) at line 1278: Row size too larg
  19. 《灵飞经5·龙生九子》第二十四章 九王朝阙 上
  20. vue 路由独享守卫

热门文章

  1. windows7创建wlan热点分享网络
  2. 中国长白山国际林海雪地马拉松节将于三月底举办
  3. oracle中imp命令详解
  4. css版权备案等居于页面底部与超出不换行可滑动
  5. ethtool如何让接口闪灯_如何使用ethtool命令管理以太网卡
  6. APM直升机调试记录
  7. 使用Axure制作网页
  8. Ansible学习笔记——JINJA2模板的语法及使用(template模块)
  9. 计算机专业未来规划作文英文,以“未来的职业”写一篇英语作文
  10. 史上最详细Lip-reading with Hierarchical Pyramidal Convolution and Self-Attention文章记录