zoukankan      html  css  js  c++  java
  • 6、URL解析过程

    页面解析的全过程

    1、用户输入网址,浏览器发起DNS查询请求

    用户访问网页,DNS服务器(域名解析系统)会根据用户提供的域名查找对应的IP地址

    2、建立TCP连接

    浏览器通过DNS查询到web服务器的真实IP地址后,便向服务器发起TCP连接请求,通过TCP的三次握手建立连接后,浏览器便可以将数据通过http请求发送给服务器了

    3、浏览器向web服务器发送一个http请求

    http请求是基于TCP协议之上的应用层协议--超文本传输协议。

    http请求包括:

    • 请求行:请求方法 url 协议/版本
    • 请求头:数据以键值对的形式存放,其中包括Host、Connection、Accept、Accept-Encoding等
    • 请求空行
    • 请求体:一般包含请求的数据

    4、发送响应数据给客户端

    web服务器通过监听80端口来获取客户端的http请求。

    与客户端建立连接后,web服务器开始接受客户端发来的数据,并通过http解码,从接收到的网络数据中解析出请求的url信息,如Accept-Encoding等。web服务器将根据http请求的信息,响应相应的数据给客户端,典型的http响应数据如下:

    • 状态行:协议/版本 状态码 状态描述
    • 响应头:数据以键值对的形式存放,其中包括Location、Server、Content-Type、Content-Length等
    • 响应空行
    • 响应体

    至此,一个HTTP通信完成。服务器会根据http请求头中的Connection字段值决定是否关闭TCP连接通道,若其值为keep-alive时,web服务器不会立即关闭连接

    5、浏览器解析http响应

    • html文档解析(DOM Tree)
    • 浏览器发送获取嵌入到html中的对象
    • css解析
    • js解析

    【参考资料】

    https://blog.csdn.net/angle_chen123/article/details/85335244

  • 相关阅读:
    P3332 [ZJOI2013]K大数查询
    树上最短路---------------树链剖分,优化建边。
    BZOJ_4386
    2016_1_13(3)
    2016_1_13(2)
    2016_1_13
    BZOJ_1698
    BZOJ_4152
    BZOJ_3110
    BZOJ_2141
  • 原文地址:https://www.cnblogs.com/yif930916/p/14984671.html
Copyright © 2011-2022 走看看