HTTP报文

如何创建报文
如何理解他们
报文是如何流动的?
HTTP报文的三个组成部分
起始行、首部、实体的主体部分
请求和响应报文之间的区别
请求报文支持的各种方法
和响应报文一起返回的各种状态码
各种HTTP首部是用来做什么的

什么是HTTP报文?

如果说HTTP是因特网的信使,那么HTTP报文就是它用来搬东西的包裹了。
HTTP报文在HTTP应用程序之间发送的数据块。这些数据块以一些文本形式的元信息开头,元信息描述了报文的内容和含义,后面跟可选的数据部分。

HTTP报文的组成部分

HTTP报文是简单的格式化数据块。
每条报文都包含一条来自客户端的请求,或者一条来自服务器的响应。
他们由三部分组成:对报文进行描述的起始行、包含属性的首部以及可选的,包含数据的主体部分
起始行和首部是由一个空行分割的ASCII文本。每行都以一个由两个字符组成的行终止序列作为结束(一个回车符、一个换行符)。这个终止序列可以写做CRLF.
报文的主体是一个是一个可选的数据块。与起始行和首部不同,主体可以包含文本和二进制数据,也可以为空。
报文的首部给出了一些与主体有关的信息。例如:
content-Type 说明了主体是什么(类型)
content-Length 说明了主体有多大

报文的语法

报文可以分为两类:请求报文和响应报文。
请求报文会向服务器请求一个动作,响应报文会将请求的结果返回给客户端。


包含请求和响应报文的HTTP事务

请求报文的格式:

  



响应报文的格式(注意:只有起始行的语法不同):

  



  • method: 客户端希望服务器对资源执行的动作。
  • request-URL: 所请求的资源
  • version: 报文所使用的HTTP版本(HTTP/.)
  • status: 响应状态码,描述了请求过程中所发生的情况。第一位数字都用于描述状态的一般类别(成功、出错等等)
  • reason-phrase: 原因短语 数字状态码的可读版本。包含终止序列之前的所有文本。
  • headers: 首部,可以有零个或多个首部。首部由空行(CRLF)结束。
  • entity-body: 报文的主体部分。


    请求和响应报文

起始行

首部

报文的主体

方法

状态码

你可能感兴趣的:(HTTP报文)