zdq0394.github.com

Tech study and research.

Follow me on GitHub

HTTP概述

HTTP使用的是可靠的数据传输协议(TCP)。

基于HTTP协议的服务器和客户端分别称为HTTP服务器和HTTP客户端,或者Web服务器和Web客户端(Web浏览器)。

资源

Web服务器是web资源的宿主。Web资源是Web内容的源头。最简单的web资源就是Web服务器文件系统中的静态文件。

  • 媒体类型 MIME类型是一种文本标记,表示一种主要的对象类型和一个特定的子类型,中间由一条斜杠来分隔。
  • URI 每个Web资源都有一个名字,统一资源标志符(URI)。
  • URL 统一资源定位符是统一资源标志符的最常见的形式。
  • URN 统一资源名,仍处于试验阶段。

HTTP事务

一个HTTP事务由一条HTTP请求命令和一个HTTP响应结果组成。

HTTP请求命令和HTTP响应结果都是一个HTTP报文(HTTP message),分别称为HTTP请求报文和HTTP响应报文。

HTTP请求命令称为HTTP方法(HTTP method):GET、PUT、POST、HEAD、DELETE是比较常见的5种。

一个web页面通常并不是单个资源,而是一组资源的集合。

HTTP报文

HTTP报文是由一行一行的简单字符串组成的。

HTTP报文都是纯文本,不是二进制代码。

HTTP报文包括以下三个部分:

  • 起始行 报文的第一行,在请求报文中说明要做些什么,在响应报文中说明发生了什么。
  • 首部字段 起始行后面的0个或者多个首部字段,首部字段是Key-Value对,由冒号(:)隔开。首部以一个空行结束。
  • 主体 空行之后就是可选的主体了。