http的请求报文组成

  • 请求行:包括请求方法、url、http协议版本。 例:GET /index.html HTTP/ 1.1。
  • 请求头部:由键值对组成,每行一对,键和值用英文的冒号“:”分隔。
  • 空行
  • 请求体: POST、PUT请求等请求携带的数据。

http的响应报文组成

  • 响应行:由协议版本、状态码、状态码原因短语组成。例:HTTP/1.1 200 OK
  • 响应头部:由键值对组成。
  • 空行
  • 响应体:服务器响应的数据

HTTP的头部字段有哪些

  • 通用头部字段:请求报文和响应报文都会使用的首部。
  • 请求头部:请求报文使用的首部。
  • 响应头部:响应报文使用的首部。
  • 实体首部字段:针对请求报文和响应报文的实体部分使用首部。

通用首部字段

  • Cache-Control:缓存控制。
  • Connection:链接管理、逐条首部。
  • Date: 创建报文时间。

….

请求首部字段

  • Accept: 客户端或者代理能够处理的媒体类型。
  • Accept-Encoding:优先可处理的编码格式。
  • Host:请求资源所在的服务器。
  • User-Agent:客户端程序信息。
  • Authorization: web 的认证信息。

….

响应首部字段

  • Age 推算资源创建经过的时间。
  • Server:服务器的信息。
  • Etag:能够表示资源唯一资源的字符串。

实体首部字段

  • Content-Language:实体资源的语言。
  • Content-Encoding:实体的编码格式。
  • Content-Length: 实体的大小。
  • Content-Type:实体媒体类型。
  • Expires:实体主体的过期资源。

HTTP的状态码

2xx成功

  • 200 OK,表示客户端发来的请求在服务端正确处理。
  • 204 No Content,表示请求成功,但是响应报文不包含实体的主体部分。

…..

3xx重定向

  • 301 moved permanentluy,永久重定向,表示资源已经被分配了新的URL。
  • 302 found,临时重定向,表示资源临时被分配了新的URL。

    4xx 客户端错误

  • 400 bad request,请求报文存在语法错误。

  • 401 unauthorized,表示发送的请求需要有通过HTTP认知的信息。

    5xx服务器错误

  • 500 internal server error,表示服务器在执行请求是发生了错误。