- 浏览器使用http/https向服务器请求页面;
- 把请求回来的HTML经过解析,构建DOM树; 计算DOM数上的CSS属性;
- 根据CSS属性对元素进行逐个渲染,得到内存中的位图;
- 对位图进行合成,增加后续绘制的速度(可选);
- 绘制
请求头:请求的方法,路径,版本和协议
GET / HTTP/1.1
baidu.com
响应部分:协议和版本,状态码和状态文本 响应头;响应体;
Date: Fri, 25 Jan 2019 13:28:12 GMT
Content-Type: text/html
Content-Length: 182
Connection: keep-alive
Location: https://time.geekbang.org/
Strict-Transport-Security: max-age=15768000
<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>openresty</center>
</body>
</html>
http methods:
- GET/POST/:浏览器通过地址栏访问页面GET方法,表单提交POST方法
- HEAD/:
- PUT/DELETE/:添加和删除资源
- CONNECTION/:HTTPS/WEBSOCKET
- OPTIONS/TRACE
状态码:
1XX:临时回应,表示客户端继续
2XX:请求成功
200请求成功
3xx:请求的目标有变化,希望客户端做进一步处理
301&302:永久与临时性跳转
304:客户端缓存没有更新
4XX:客户端请求错误
403 :无权限
404:请求的页面不存在
5XX:服务端请求错误
500:服务端错误
503:服务端暂时性错误
Request Header
response Header
HTTPS:首先与服务器端建立一条TLS加密通道。TLS构建于TCP之上
HTTP2:改进点:
- 支持服务器端推送(服务端推送能够在客户端发送第一个请求到服务器时提前把一部分内容推送给客户端进行缓存。)
- 支持TCP连接复用(使用同一个TCP连接来传输多个HTTP请求。)