GET: 请求指定的页面信息,并返回实体主体。
HEAD: 只请求页面的首部。
POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体。
PUT: 从客户端向服务器传送的数据取代指定的文档的内容。
DELETE: 请求服务器删除指定的页面。
OPTIONS: 允许客户端查看服务器的性能。
TRACE: 请求服务器在响应中的实体主体部分返回所得到的内容。
PATCH: 实体中包含一个表,表中说明与该URI所表示的原内容的区别。
MOVE: 请求服务器将指定的页面移至另一个网络地址。
COPY: 请求服务器将指定的页面拷贝至另一个网络地址。
LINK: 请求服务器建立链接关系。
UNLINK: 断开链接关系。
WRAPPED: 允许客户端发送经过封装的请求。
Extension-mothed:在不改动协议的前提下,可增加另外的方法。

当服务器响应时,其状态行的信息为HTTP的版本号,状态码,及解释状态码的简单说明。现将5类状态码详细列出:
① 客户方错误
100  继续
101  交换协议
② 成功
200  OK
201  已创建
202  接收
203  非认证信息
204  无内容
205  重置内容
206  部分内容
③ 重定向
300  多路选择
301  永久转移
302  暂时转移
303  参见其它
304  未修改(Not Modified)
305  使用代理
④ 客户方错误
400  错误请求(Bad Request)
401  未认证
402  需要付费
403  禁止(Forbidden)
404  未找到(Not Found)
405  方法不允许
406  不接受
407  需要代理认证
408  请求超时
409  冲突
410  失败
411  需要长度
412  条件失败
413  请求实体太大
414  请求URI太长
415  不支持媒体类型
⑤ 服务器错误
500  服务器内部错误
501  未实现(Not Implemented)
502  网关失败
504  网关超时
505 HTTP版本不支持

关于实体头部的内容还可以有:
Last Modified :请求文档的最近修改时间。
Expires :请求文档的过期时间。
Connect-length:文档数据的长度。
WWW-authenricate:通知客户端需要的认证信息。
Connect-encoding :说明有无使用压缩技术。
Transfer-encoding :说明采用的编码变换类型。

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

0,GET
1,HEAD
2,PUT
3,DELETE
4,POST
5,OPTIONS

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

0,GET:GET可以说是最常见的了,它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。
1,HEAD:HEAD和GET本质是一样的,区别在于HEAD不含有呈现数据,而仅仅是HTTP头信息。有的人可能觉得这个方法没什么用,其实不是这样的。想象一个业务情景:欲判断某个资源是否存在,我们通常使用GET,但这里用HEAD则意义更加明确。
2,PUT:这个方法比较少见。HTML表单也不支持这个。本质上来讲, PUT和POST极为相似,都是向服务器发送数据,但它们之间有一个重要区别,PUT通常指定了资源的存放位置,而POST则没有,POST的数据存放位置由服务器自己决定。举个例子:如一个用于提交博文的URL,/addBlog。如果用PUT,则提交的URL会是像这样的”/addBlog/abc123”,其中abc123就是这个博文的地址。而如果用POST,则这个地址会在提交后由服务器告知客户端。目前大部分博客都是这样的。显然,PUT和POST用途是不一样的。具体用哪个还取决于当前的业务场景。
3,DELETE:删除某一个资源。基本上这个也很少见,不过还是有一些地方比如amazon的S3云服务里面就用的这个方法来删除资源。
4,POST:向服务器提交数据。这个方法用途广泛,几乎目前所有的提交操作都是靠这个完成。
5,OPTIONS:这个方法很有趣,但极少使用。它用于获取当前URL所支持的方法。若请求成功,则它会在HTTP头中包含一个名为“Allow”的头,值是所支持的方法,如“GET, POST”。

其实还有一个TRACE方法,不过这个基本上不会用到,这里就不介绍了。以上的六种方法,我们可以跟数据库的CRUD增删改查操作对应起来:

CREATE :PUT
READ:GET
UPDATE:POST
DELETE:DELETE

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

HTTP协议中常见请求方法以及一些常见错误代码相关推荐

  1. 谈BitTorrent协议中的DHT方法

    背景:P2P.BT协议 1.P2P方法的思想和产生原因 P2P全称Peer to Peer.要想理解p2p首先要了解另一种更原始的结构:C/S结构. C/S结构中,C指client,S指server. ...

  2. 3-3:HTTP协议之request和respond及常见请求方法和常见状态码

    文章目录 一:request (1)请求报文基本构成 (2)请求方法 二:respond (1)响应报文基本构成 (2)HTTP常见状态码 三:HTTP常见Header(字段) 注意下面需要分析请求报 ...

  3. HTTP协议、HTTP请求方法、常见状态码、HTTP消息

    HTTP协议 客户端请求,服务端响应.浏览器与服务器不建立持久连接,响应后连接失效. HTTP请求方法 一.GET GET方法用于获取请求页面的指定信息. 二.HEAD 除了服务器不能在响应里返回消息 ...

  4. python中的请求方法_http协议的9种请求方法

    http协议的9种请求方法 在http/1.1协议中,定义了8种访问指定资源的方法,他们分别为 OPTIONS GET HEAD POST PUT PATCH DELETE TRACE CONNECT ...

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

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

  6. python中的请求方法_Python爬虫HTPP请求方法有哪些

    HTTP请求方法 GET:请求指定的页面信息,并返回实体主体. HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头 POST:向指定资源提交数据进行处理请求(例如提交表单或者上 ...

  7. 低压抽屉柜常见故障处理方法_传真机常见故障如何处理 传真机常见故障处理方法【详解】...

    如今传真机的功能是越来越全面了,内部构造也越来越复杂.因此人们在日常使用传真机过程中难免会出现各种各样的问题.那么传真机常见故障有哪些?有哪些相应的解决或排除方法呢?下面随着小编一起来了解下吧! 一. ...

  8. 低压抽屉柜常见故障处理方法_低压配电柜常见故障问题解决汇总

    大家一定对日常生活中的低压配电柜有所了解,但它经常出现的一些故障问题你知道如何解决吗?接下来由石家庄配电柜厂家德兰电气就给大家讲解低压配电柜常见的故障与原因分析,供大家借鉴解决我们所遇到的问题. 低压 ...

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

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

最新文章

  1. linux 多目录makefile,royalchen
  2. Vue之for列表渲染、methods事件和model表单绑定
  3. python四十四:面向对象特性:继承
  4. WmS详解(一)之token到底是什么?基于Android7.0源码
  5. 设计模式:装饰模式(Decorator)
  6. 快速获取csv数量_【数量技术宅|数据爬虫系列分享】如何获取免费的数字货币历史数据...
  7. 您未被授权查看该页 您不具备使用所提供的凭据查看该目录或页的权限 HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。...
  8. 【队列+模拟】机器翻译 luogu-1540
  9. 什么是Joint Escalation Team?
  10. matlab 结构体遍历,matlab 遍历结构体struc的成员
  11. 【Coursera】DNS加速器
  12. python实现元胞自动机
  13. Taro 周报 #7: 收获「e代驾」案例,发布 v2.2.16 和 v3.2.0-canary.2
  14. 试验设计与因果分析感想
  15. POI读取Excel时报错java.util.zip.ZipException: invalid stored block lengths
  16. php guzzle 上传文件,Guzzle 使用文档
  17. 温故知新(五)——三参数陷波滤波器离散化推导及MATLAB实现
  18. 芯盾时代: 开启“智慧身份认证”新时代
  19. 计算机主板的海关编码,请问线路板上已经含有电子元件的海关编码是多少?急啊!!...
  20. imac一体机,mac 电脑安装win7双系统

热门文章

  1. php输入对话框,如何使用JavaScript实现输入对话框
  2. visual studio 2015安装 无法启动程序,因为计算机丢失D3DCOMPILER_47.dll 的解决方法
  3. 华为手机如何调时间显示_华为手机照片如何出现时间地点天气,教你30秒,一学就会...
  4. mongodb备份oplog_MongoDB 备份(mongodump)与恢复(mongorestore)
  5. python数据动画_[转载]Maya使用Python获取动画每帧的rotation数据
  6. bzoj1058: [ZJOI2007]报表统计
  7. C++的ORM工具比较
  8. 复习知识点:UITableView和UICollectionView的常用属性
  9. Emule使用Upnp,解决Lowid和port not reachable的问题
  10. 深入理解Java内存模型(七)——总结