Home HTTP报文小结
Post
Cancel

HTTP报文小结

HTTP报文小结
一直感觉自己HTTP这一块挺薄弱的,很多概念掌握的不精。本文是本人对HTTP报文的一些整理与小结。

HTTP报文即用于HTTP协议交互的信息,可以分为请求报文和响应报文。它本身其实就是多行(CRLF作为换行符)数据组成的一个文本。

HTTP报文结构

它大致可以分为首部和主体两部分,两者由空行来分隔。报文主体并不是必须的。

 

报文首部
空行
报文主体

 

对于报文的首部,其结构如下所示

请求行/状态行
首部字段
首部字段
首部字段
其它

 

首部内容由以下这些内容组成

  • 请求行 包含用于请求的方法、URI和HTTP版本
  • 状态行 包含响应结果的状态吗,原因和HTTP版本
  • 首部字段 包含请求和响应的各种条件和属性各类首部(包括通用首部、请求首部、相应首部和实体首部)
  • 其它 包含RFC未定义的首部(如Cookie)

HTTP报文的内容编码

为了提升传输效率,HTTP可以对内容进行编码传输,常见的内容编码包括以下几种

  • gzip(GNU zip)
  • compress (UNIX系统标准亚索)
  • deflate(zlib)
  • identity(不进行编码)

HTTP状态码

 类别原因
1XXInformational(信息性状态码)请求正在处理
2XXSuccess(成功状态码)请求正常处理完毕
3XXRedirection(重定向状态码)要进行附加操作以完成请求
4XXClient Error(客户端错误状态码)服务器无法处理请求
5XXServer Error(服务器错误状态码)服务器处理请求出错
This post is licensed under CC BY 4.0 by the author.

CR与LF

ThreadLocal源码解读