HTTP从入门到入土——HTTP报文格式

Posted karthuslorin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP从入门到入土——HTTP报文格式相关的知识,希望对你有一定的参考价值。

HTTP报文格式

HTTP报文分为请求报文和响应报文,只有发送了请求报文,才会有响应报文。

常见的报文格式如下所示:

技术分享图片

请求报文

一个请求报文由四部分组成,分别是:

  • 请求行
  • 请求头
  • 空行
  • 请求正文

请求行

请求行由三部分组成,分别是:请求方法,URL以及协议版本。

GET /test/hi-there.txt HTTP/1.0

如上所示:该请求行的请求表示了本次请求的请求方法是GET,URL是/test/hi-there.txt,协议版本是1.0。

请求头

请求头又多个键值对组成,一般用来描述客户端的情况以及对服务器的要求,可以说,请求头是HTTP协议中最重要的部分了,许多HTTP方面的优化都可以从请求头方面入手。

之后将会有文章专门介绍请求头。

空行

空行位于请求头之后,由回车符和换行符组成,用来隔断请求头和请求正文。

请求正文

请求正文中一般存储请求方法(比如POST)携带的参数

响应报文

响应报文同样由四部分组成,分别是:

  • 响应行
  • 响应头
  • 空行
  • 响应正文

响应行

响应行由三部分组成,分别是:协议版本,状态码以及状态描述。

HTTP/1.0 200 OK

如上所示,协议版本是1.0版本,状态码为200,状态描述为OK,从这一条可以看出,服务器成功返回了信息。

响应头

响应头和请求头类似,用来描述服务器信息以及对请求头的回应。

空行

空行位于响应头之后,由回车符和换行符组成,用来隔断响应头和响应正文。

响应正文

响应正文就是服务器针对HTTP请求返回的数据,按照HTTP请求的数据不同可以返回不同种类的数据。

以上是关于HTTP从入门到入土——HTTP报文格式的主要内容,如果未能解决你的问题,请参考以下文章

HTTP从入门到入土——URIURL和URN

HTTP从入门到入土——五层网络模型

Excel从入门到入土

Flutter从入门到入土网络请求Dio

《Java从入门到精通(入土)》字符串 中

Quartz任务调度Quartz从入门到入土(史上最详细)