01-http概述

HTTP概述

  • HTTP使用的是可靠地数据传输协议。
  • HTTP属于应用层协议

Web客户端和服务器

  • web服务器:又称http服务器,用于存储web内容,并向web客户端提供web内容
  • web客户端:用于请求web服务器的应用软件,常见为浏览器

资源

媒体类型

MIME类型是一种文本标记,表示一种主要对象类型和一个特定的子类型,用/分隔;

URI(统一资源标识符)

URI的两种形式为:URL与URN

URL(统一资源定位符)
  1. 描述一台特定服务器上某资源的特定位置
  2. 目前几乎所有URI都是URL
  3. 解析URL组成:例如:https://www.baidu.com/img/a.png;
  • 方案,说明访问资源说使用的协议类型。通常为http或https协议,上方为例即:https//
  • 服务器因特网地址(域名):上方为例即:www.baidu.com
  • 指定资源路径:上方为例即:/img/a.png
URN(统一资源名)

作为特定内容的唯一名称使用,与目前资源的所在地无关。目前处于实验阶段,并不推广使用

事务

方法

常见http方法如下:

  • GET:从服务器向客户端发送命名资源
  • PUT:将来自客户端的数据存储到一个命名的服务器资源中去
  • DELETE:从服务器中删除命名资源
  • POST:将客户端数据发送到一个服务器网管应用程序
  • HEAD:仅发送命名资源响应中的HTTP首部

状态码

  • 每条HTTP响应报文返回时都会携带一个状态码
  • 状态码都为三位数值的代码,代表着额定意义
  • 状态码后都会有一条解释性的原因短语
    常见状态码:
  • 200:OK。文档正确返回
  • 302:Redirect(重定向)。到其他地方取资源
  • 404:Not Found(未找到)。无法找到该资源

报文

  • HTTP报文是由一行一行的简单字符串组成的。HTTP报文都是纯文本,不是二进制代码
  • 请求报文(request message):web客户端向web服务器发送的报文
  • 响应报文(response message):web服务器向web客户端发送的报文

http报文的三部分

  1. 起始行:请求报文包含请求路径,请求方法,http协议版本;响应报文包含http协议版本,http状态码,状态码解释短语
  2. 首部字段(header头):每个首部字段都包含一个名字和一个值,使用:分隔,多个字段使用新行分隔,并以空行结束
  3. 主体:请求报文包含发送给web服务器的数据;响应报文包含发送给客户端的数据

链接

TCP/IP

TCP特点

  • 无差错的数据传输
  • 按序传输(数据按照发送的顺序到达)
  • 未分段的数据流(可以在任意时刻以任意尺寸将数据发送出去)
    HTTP协议栈
    01-http概述_第1张图片

连接、IP和端口号

01-http概述_第2张图片
http链接无端口号时,默认端口号为80

协议版本

按照时间顺序如下:

  • HTTP0.9:只支持GET方法,不支持多媒体的MIME内容,各种HTTP首部与版本号,只应该用于与老的客户端进行连接
  • HTTP1.0:添加了版本号,各种HTTP首部,一些额外的方法,以及多媒体对象的处理
  • HTTP1.1:重点关注的是校正HTTP设计中的结构性缺陷,明确语义,引入重要的性能优化措施,并删除一些不好的特性
  • HTTP2.0(HTTP-NG):目前仍在实验中。重点关注性能的大幅优化,以及更强大的服务逻辑远程执行框架

web的结构组件

代理

位于客户端和服务端之间的HTTP中间实体
01-http概述_第3张图片

缓存

HTTP的仓库,使常用页面的副本可以保存在离客户端更近的地方
01-http概述_第4张图片

网关

连接其他应用程序的特殊web服务器
01-http概述_第5张图片

隧道

对HTTP通信报文进行盲转发的特殊代理
01-http概述_第6张图片

Agent代理

发起自动http请求的半智能web客户端
01-http概述_第7张图片

你可能感兴趣的:(笔记,学习)