http

http

请求报文(request message)

  • 请求报文分为三部分:请求行,请求头,请求体.

    请求行包括:请求类型,URL,HTTP版本.

    请求头部保存一些键值对的属性.

    请求体保存具体内容,一般为POST类型的参数.

响应报文(response message)

  • 响应报文也由三部分组成,首行,响应头,响应体.

浏览器输入URL后发生了什么

1.DNS域名解析;
2.建立TCP连接;
3.发送HTTP请求;
4.服务器处理请求;
5.返回响应结果;
6.关闭TCP连接;
7.浏览器解析HTML;
8.浏览器布局渲染;

1.DNS域名解析

DNS查找过程为:
浏览器缓存->系统缓存->路由器缓存->ISP DNS缓存->递归搜索
递归搜索过程为:从根域名服务器到顶级域名服务器到你查询的域名服务器。

2.建立TCP链接

第一次握手:客户端向服务器端发送请求(SYN=1) 等待服务器确认;
第二次握手:服务器收到请求并确认,回复一个指令(SYN=1,ACK=1);
第三次握手:客户端收到服务器的回复指令并返回确认(ACK=1)。

3.发送HTTP请求

在完成3次握手后,由客户端向服务器端发送http请求,http请求内容包括:
请求行,请求头,请求体.
GET:获取资源 
POST:传输实体主体 
HEAD:获取报文首部 
PUT:传输文件 
DELETE:删除文件 
OPTIONS:询问支持的方法 
TRACE:追踪路径

4.服务器处理请求并返回http报文

响应行:http版本+状态码+状态描述
响应头
响应体
状态码:

1**:信息性状态码 
2**:成功状态码 
200:OK 请求正常处理 
204:No Content请求处理成功,但没有资源可返回 
206:Partial Content对资源的某一部分的请求 
3**:重定向状态码 
301:Moved Permanently 永久重定向 
302:Found 临时性重定向 
304Not Modified 缓存中读取 
4**:客户端错误状态码 
400:Bad Request 请求报文中存在语法错误 
401:Unauthorized需要有通过Http认证的认证信息 
403:Forbidden访问被拒绝 
404Not Found无法找到请求资源 
5**:服务器错误状态码 
500:Internal Server Error 服务器端在执行时发生错误 
503:Service Unavailable 服务器处于超负载或者正在进行停机维护

5.关闭TCP连接

6.浏览器解析HTML

  • 浏览器通过解析HTML,生成DOM树
  • 解析CSS,生成CSS规则树
  • 然后通过DOM树和CSS规则树生成渲染树。

7.浏览器布局渲染

  • 根据渲染树布局,计算CSS样式,即每个节点在页面中的大小和位置等几何信息
  • 绘制各个节点,将页面展示给用户。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值