HTTP请求报文
发表于|更新于
|总字数:87|阅读时长:1分钟|浏览量:
HTTP请求报文由三部分组成:请求行、请求头和请求体
- 请求行:包含请求方法,请求的URI和HTTP版本
- 状态行:包含响应结果的状态码
- 首部字段:包含请求和响应的各种条件、属性的各类首部
- 其他:包含未定义的首部比如cookie等
文章作者: 丨小小丶
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Hexo!
相关推荐
2021-03-21
HTTP1、2、3
HTTP/1.1 HTTP的工作流程 浏览器与服务器建立TCP连接,即三次握手 TCP连接成功,浏览器发送HTTP请求命令 服务器接收到请求并返回HTTP响应 服务器关闭连接,即四次挥手 浏览器解析请求的资源 Connection:keep-alive可以让TCP连接保持打开,浏览器可继续通过相同的连接发送请求。HTTP1.1所有的请求都是默认保持持续连接的 缺陷 高延迟,队头阻塞,贷款无法充分利用 队头阻塞是指当顺序发送的请求序列中的一个请求因为某种原因被阻塞时,在后面排队的所有请求也都会被阻塞,会导致客户端迟迟收不到数据。 无状态特性带来的巨大的头部 携带过多的header信息,如user-agent,cookie,accept等 请求报文有过多的重复字段,浪费资源 明文传输的不安全性 不支持服务推送 HTTP/2SPDY协议HTTP/2是HTTP/1.x的代替,但不是重写,HTTP方法/状态码/语义都和HTTP/1.x一样。HTTP/2基于SPDY,专注于性能。 二进制传输HTTP/2将请求和响应数据分割为更小的帧,并且采用的是二进制编码它把TCP协议的部...
2021-03-16
HTTP与HTTPS
一、HTTP和HTTPS的基本概念HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器请求和应答的标准(TCP),用于从Web服务器传输超文本到本地浏览器的传输协议。 HTTPS:是以安全为目标的HTTP通道,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTP开发的主要目的是提供对网站服务器的身份认证,保护交换数据的隐私和完整性 二、HTTP的工作原理 客户端与服务器建立TCP连接(三次握手) 连接成功后,客户端发送请求给服务器 服务器接收到客户端发送的消息后作出响应,并将响应信息发给客户端 服务器发送玩响应信息后,就会断开TCP连接,因此HTTP是无状态的,下一次访问的时候不知道之前访问的过程 客户端收到响应信息,浏览器开始解析,将HTML文档解析后呈现在浏览器上 三、HTTPS的工作原理 客户端发起HTTPS请求 用户在浏览器中输入一个HTTPS网址,连接到server的443端口 传送证书 采用HTTPS协议的服务器必须要有一套数字证书,这套证书其实就是一对公钥和私钥。 服务器将证书发送给客户端,这个...
2021-03-15
从输入URL到网页呈现的过程
1、输入网址 2、DNS解析 3、建立tcp连接 4、客户端发送HTPP请求 5、服务器处理请求 6、服务器响应请求 7、浏览器展示HTML 8、浏览器发送请求获取其他在HTML中的资源。 1.域名解析当我们在浏览器中输入一个URL的时候首先需要解析为IP地址,这一过程叫做DNS解析 DNS解析是一个递归查询的过程,例如我们解析“www.baidu.com” 时过程是这样的: 在本地域名服务器中查询IP地址,未找到域名 本地域名服务器向根域名服务器发送请求,未找到域名 本地服务器向.com顶级域名服务器发送请求,未找到域名 本地域名服务器向.baidu.com域名服务器发送请求,找到该域名,并将对应的IP返回给本地域名服务器 2.TCP连接HTTP协议是使用TCP协议作为其传输层协议的,在拿到服务器的IP地址后,浏览器客户端会与服务器建立TCP连接,该过程包括三次握手 3.浏览器发送HTTP请求浏览器构建http请求报文,并通过TCP协议传送到服务器的指定端口,http请求报文一共包括三个部分: 请求行:指定http请求的方法、url、http协议版本等 请...
2021-03-14
TCP和UDP
TCP和UDP的区别 TCP是面向连接的,UDP是面向无连接的。 UDP程序结构较为简单。 TCP是面向字节流的,UDP是基于数据报的。 TCP保证数据正确性,UDP可能丢包。 TCP保证数据顺序,UDP不保证 什么是UDPUDP的包头: 两个十六位的端口号,分别为源端口和目标端口。 整个数据报文的长度。 整个数据报文的校验和,该字段用于发现头部信息和数据中的错误。 UDP的特点 沟通简单,不需要大量的数据结构、处理逻辑和包头字段 不会建立连接,但是会监听这个地方,谁都可以传给它数据,它也可以传给任何人数据,甚至可以同时传给多个人。 不会根据网络的情况进行拥塞控制,无论是否丢包都会一直发送 因此UDP在传输报文时是很高效的 什么是TCPTCP的包头格式: 首先是源端口和目标端口 接下来是包的序号,主要为了解决乱序问题 确认序号,发出去的包应该有确认,这样能知道对方是否收到,如果没收到就应该重新发送,解决丢包的问题 状态位。SYN是发起一个链接,ACK是回复,RST是重新连接,FIN是结束连接。因为TCP是面向连接的,因此需要双方维护连接的状态,这些状态位的包会引...
