HTTP协议解析

一.HTTP

客户端:通过发送请求获取服务器资源的 Web 浏览器等.

HTTP:HyperText Transfer Protocol,超文本传输协议

URL:Uniform12Resource Locator,统一资源定位符

TCP/IP:互联网相关的各类协议族的总称

TCP/IP

1.分层

  • 应用层
    决定了向用户提供应用服务时通信的活动,如HTTP、FTP协议、DNS服务、

  • 传输层
    提供处于网络连接中的两台计算机之间的数据传输。TCP、UDP协议

  • 网络层
    处理在网络上流动的数据包。数据包是网络传输的最小数据单位。

  • 链路层
    处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱
    动、网络适配器,及光纤等物理可见部分

2.传输

  • 传输流
    tcp-transmition

  • 封装

    数据在层与层之间传输时,每经过一层时必定会被打上一个该层所属的首部信息,并在接收端逐层消去
    tcp-data

3. 协议

  • IP 协议(传输)

    位于网络层,利用IP地址(可变)和MAC地址(网卡固定地址)把各种数据包准确传送给对方,使用ARP协议凭借 MAC 地址进行通信。

  • TCP协议(确保准确性)

    位于传输层,将大块数据分割成以报文段(segment)为单位的数据包进行管理。

    TCP可以采用三次握手策略,确保将数据送达目标,若握手过程莫名中断,TCP协议会再次以相同的顺序发送相同的数据包。
    three-hand

  • DNS 服务(域名解析)

    位于应用层,提供域名到 IP 地址之间的解析服务
    protocol

4.URI和URL

URI:统一资源标识符,表示由某个协议方案(http、ftp、file等)表示的资源的定位标识符

URL:统一资源定位符

二.HTTP协议

用于客户端和服务器端之间的通信

客户端:请求访问文本或图像等资源的一端

服务器端:提供资源响应的一端

客户端通过HTTP协议发起请求报文(请求方法+请求URI+协议版本+可选的首部字段+内容实体)
,服务器端返回响应报文(协议版本+状态码+原因短句+首部字段+空行+实体主体)。

HTTP是无状态协议,不保存之前一切请求或响应报文的信息,为了保存状态,引入了cookie

HTTP方法

  • GET(获取资源):请求访问已被 URI 识别的资源,返回响应内容
  • POST(传输实体主体)
  • HEAD(获得报文首部:用于确认URI 的有效性及资源更新的日期时间等
  • OPTIONS(询问支持的方法):查询针对请求 URI 指定的资源支持的方法
  • PUT(传输文件):要求在请求报文的主体中包含文件内容,然后保存到请求 URI 指定的位置
  • DELETE(删除文件):按请求 URI 删除指定的资源
  • CONNECT(用隧道协议连接代理):实现用隧道协议进行 TCP 通信。主要使用 SSL(安全套接
    层)和 TLS(传输层安全)协议把通信内容加密后经网络隧道传输。

使用Cookie进行状态管理

Cookie 会根据响应报文内的Set-Cookie的首部字段信息,通知客户端保存 Cookie。

服务器端发现客户端发送过来

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值