报文结构、请求方法和HTTP状态码详解

187 阅读2分钟

报文结构、请求方法和HTTP状态码详解

一、报文结构

image.png

二、请求方法

HTTP请求的本质是对服务器资源进行操作的过程(增删改查+系统功能),通过定义不同方法实现不同操作是清晰并且必要的。

请求方法详解
GET最常用的方法,常用于请求服务器发送某个资源
HEAD和GET类型,但服务器在响应中只返回首部
POST向服务器写入数据
TRACE观察请求报文发送到服务器的最终样子
PUT和GET相反,向服务器写入资源
DELETE请求 服务器删除请求URL所制定的资源
OPTIONS......
  • 幂等操作:任意多次执行所产生的影响均与一次执行的影响相同
  • 幂等函数:幂等函数是指可以使用相同参数重复执行,并获得相同结果的函数

三、HTTP状态码

状态码含义
200~299成功状态码
300~399重定向状态码
400~499客户端错误状态码
500~599服务端错误状态码
  • 200:OK,请求没问题,实体的主体部分包含了所请求的资源
  • 204:No Content,响应报文只包含了若干头部和一个状态码,但没有实体的主体部分
  • 304:Not Modified,所请求的资源未修改,服务器返回此状态码时,不会返回任何资源(直接从本地获取资源)
  • 400:Bad Request,客户端请求的语法错误,服务器无法理解
  • 401:Unauthorized,请求客户端在获取对资源的访问权之前,对自己进行认证
  • 403:Forbidden,请求被服务器拒绝了(鉴权失败)
  • 404:Not Found,用于说明服务器无法找到所请求的URL
  • 500:Internal Server Error,服务器内部错误,无法完成请求
  • 502:Bad Gateway,作为网关或者代理工作的服务器尝试执行请求时,从远处服务器接收到一个无效的响应
  • 503:Service Unavailable,用来说明服务器现在无法为该请求提供服务
  • 504:Gateway Timeout,网关或代理的服务器,未及时从远端服务器获取请求