HTTP 的原理零散知识点

零散知识点

HTTP/1.0版的主要缺点

每个 TCP 连接只能发送一个请求,发送完数据之后,连接就会关闭,再次想要发送数据的话就需要进行,再次连接

TCP连接的新建成本很高,因为需要客户端和服务器端三次握手。

三次握手的简单交流流程

  1. 客户端发起连接
  2. 客户端发起请求
  3. 服务端响应请求
  4. 服务端关闭连接

请求消息的结构

  1. 请求行
  2. 请求头字段
  3. 一个空行
  4. 消息主体
    • 消息主体是响应消息的承载数据

URI URL URN

  1. 缩写
    1. URI
      • Uniform Resource Identifier (统一资源标识符)
    2. URL
      • Uniform Resource Locator (统一资源定位符)
    3. URN
      • Uniform Resource Name (统一资源名称)
  2. URI 与 URL 的区别
    • URI 是统一资源标识符,用来唯一的标识一个资源
    • URL 是统一资源定位器
    • URN 是统一资源名称,通过名字来表示资源的
    • URI 一般由三部分组成
      • 访问资源命名机制
      • 存放资源的主机名
      • 资源自身的名称,由路径表示,且着重强调于资源

GET、POST、PUT、DELETE、HEAD、OPTIONS、TRACE、CONNECT

  • GET 提交表单、上传文件
  • POST 传输实体主体
  • PUT 传输文件
  • DELETE 删除文件
  • HEAD 读取报文的首部(读取资源的元数据)
  • OPTIONS 询问这项资源所支持的所有请求方法
  • TRACE 回显服务器收到的额请求
  • CONNECT 保留到未来使用的关键字

HTTP超文本传输协议是一个基于请求与响应模式的,无状态的,应用层的协议,常基于TCP的连接方式

HTTP 表示通过HTTP协议定位网络资源,host表示合法的Internet主机域名或者ip地址,port指代端口号

请求报文结构

  1. 第一行 : 方法、URL、协议版本
  2. 第二行 :请求首部字段
  3. 第三行 : 内容实体

状态码

  1. 302:临时跳转
  • url地址a可以向url地址b上跳转,但这并不意味着是永久性的,有可能过短时间就从url地址a跳转到地址c。
  1. 301:永久性的重定向
  2. 200:OK
  3. 202:服务器已经接受请求,但尚未处理
  4. 204:服务器成功处理了请求,但不需要返回如何实体内容
  5. 304:被请求的资源内容没有发生更改
  6. 400:包含语法错误,无法被服务器解析
  7. 403:为服务器已经接收请求,但是被拒绝执行
  8. 404:请求失败
  9. 500:服务器内部错误,无法处理请求
  10. 502:作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效响应
  11. 504:作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI标识出的服务器,例如HTTP、FTP、LDAP)或者辅助服务器(例如DNS)收到响应

工作原理

客户端连接到web服务器

发送 HTTP 请求

服务器接收请求,并返回 HTTP 响应

释放 TCP 连接

客户端/浏览器 解析 HTML 内容

posted @ 2020-10-09 20:11  触碰A阳光  阅读(119)  评论(0编辑  收藏  举报