1.HTTP协议基础

一· 5层网络模型介绍

image

低三层

  • 物理层: 定义物理设备如何传输数据
  • 数据链路层:在通信的实体间建立数据链路连接
  • 网络层: 数据在节点之间传输创建逻辑链路

传输层

  • 向用户提供可靠的端到端(End-to-End)服务
  • 传输层向高层屏蔽了下层数据通信的细节

应用层

  • 为应用软件提供了很多服务
  • 构建于TCP协议之上的
  • 屏蔽网络传输的细节

二. HTTP协议的发展历史

HTTP/0.9版本

  • 只有一个命令GET
  • 没有HEADER等描述数据的信息
  • 服务器发送完毕,就关闭TCOP连接

HTTP/1.0版本

  • 增加很多命令
  • 增加status code和header
  • 增加了多字符集支持、多部分发送、权限、缓存等

HTTP/1.1版本

  • 持久连接
  • pipeline
  • 增加host和其他一些命令

HTTP2

  • 所有数据以二进制传输
  • 同一个连接里面发送多个请求不再需要按照顺序来处理,并行处理
  • 头信息压缩以及推送等提高效率的功能

三, HTTP的三次握手

image

HTTP1.0: 出现http 请求时,会创建tcp连接, 请求结束时, tcp连接就断开了。
HTTP1.1: 可以通过某种方式来 申明,让tcp连接一直保持着, 可以在一个tcp连接上进行多次HTTP请求。

image


四. URI-URL和URN

URI

  • Uniform Resource Identifier/统一资源标志符
  • 用来唯一标识互联网上的信息资源
  • 包括URL和URN

URL

URN

  • 永久统一资源定位符
  • 在资源移动之后还能被找到
  • 目前还没有非常成熟的使用方案

五.HTTP报文格式

image

HTTP方法

  • 用来定义对于资源的操作
  • 常有GET、POST等
  • 从定义上讲有各自的语义

HTTP CODE

  • 定义服务器对请求的处理结果
  • 各个区间的CODE有各自的语义
  • 好的HTTP服务可以通过CODE判断结果

猜你喜欢

转载自blog.csdn.net/weixin_41207499/article/details/80913916
今日推荐