当前位置:首页 > Web开发 > 正文

基于自己内部的渲染引擎(内核)开始进行页面的绘制和渲染 首先计算DOM结构

2024-03-31 Web开发

内网IP(局域网)

在一个区域内,大家连接的是同一个网络(准确来说:连接同一个WIFI不必然是同一个网络,连接差此外WIFI也可能是不异的网络,一切都看路由交换机的配置),这就是局域网

在同一个局域网下,成员可以互相访谒(你的电脑连接了A网络,手机也连接了A网络,那么手机可以访谒电脑上的一些信息了 =>这样可以做移动端开发时候的手机联调)

HBuilder也供给了联调的成果(代码上加断点,手机访谒,措施会走断点)

怎么把本身本地的代码上传到长途处事器上

处事器上是不允许安置除了开发需要的环境项以外的任何对象(连结处事器的洁净) 我们一般都基于FTP上传(有很多FTP上传的工具:FileZilla)

打开一个浏览器,在地点栏输入一个网址,按下ENTER键,到看到整个页面,中间都经历了哪些工作?

HTTP请求阶段:向处事器发送请求

浏览器首先向DNS域名解析处事器发送请求

DNS反解析:按照浏览器请求地点中的域名,到DNS处事器中找到对应的处事器外网IP地点

通过找到的外网IP,向对应的处事器发送请求(首先访谒的是处事器的WEB站点打点工具:准确来说是我们先基于工具在处事器上创建很多处事,当有客户端访谒的时候,处事器会匹配出具体是请求哪个处事)

通过URL地点中携带的端标语,找随处事器上对应的处事,以及处事所打点的项目源文件

HTTP响应阶段:处事器把客户端需要的内容筹备好,并且返回给客户端

处事器端按照请求地点中的路径名称、问号传参或者哈希值,把客户端需要的内容进行筹备和措置惩罚惩罚

把筹备的内容响应给客户端(如果请求的是HTML或者CSS等这样的资源文件,处事器返回的是资源文件中的源代码[不是文件自己])

浏览器衬着阶段

客户端浏览器接受随处事器返回的源代码,基于本身内部的衬着引擎(内核)开始进行页面的绘制和衬着

首先计算DOM布局,生成DOM TREE

自上而下运行代码,加载CSS等资源内容

按照获取的CSS生成带样式的RENDER TREE

开始衬着和绘制

我们把一次完整的 请求+响应 称之为 “HTTP事务” 事务就是完整的一次操纵,请求和响应缺一不成

一个页面完全加载完成,需要向处事器倡议很多次HTTP事务操纵

一般来说:首先把HTML源代码拿回来,加载HTML的时候,遇到link/script/img[src]/iframe/video和audio[没有设置preload='none']...城市从头和处事器端成立HTTP事务交互

特殊情况:如果我们做了资源缓存措置惩罚惩罚(304),而且即将加载的资源在之前已经加载过了,这样的操纵和传统的HTTP事务有所不一样,他们是从处事器和浏览器的缓存中读取数据,比传统的读取快很多

在客户端向处事器发送请求,以及处事器把内容响应给客户真个时候,中间彼此通报了很多内容(客户端把一些内容通报处事器,处事器把一些内容响应给客户端),我们把通报的内容统称为“HTTP报文

一个完整URL的构成

URL/URN/URI URI = URL+URN URI:统一资源标识符 URL:统一资源定位符 URN:统一资源名称

[传输协议]

用来传输客户端和处事器端交互的信息的(类似于快递小哥)

HTTP:超文本传输协议(除了通报普通的文本,还可以通报文件流或者进制编码等信息),是目前最常用的WEB传输协议

HTTPS:基于SSL(Secure Sockets Layer 安适套接层)加密的HTTP传输协议,比HTTP越发的安适(涉及付出的网站一般都是基于HTTPS完成的)

FTP:文件传输协议,一般用来实现资源文件在处事器上的上传下载

[域名] Domain Name

[端标语]

[请求路径名称]

[问号传参及哈希值]

?xxx=xxx&...#xxx

在HTTP事务中,问号传参是客户端把信息通报给处事器的一种方法(也有可能是跳转到某一个页面,把参数值通报给页面用来标识的)

哈希值一般都跟客户端处事器交互没啥关系,主要用于页面中的锚点定位和HASH路由切换

HTTP报文

起始行:请求起始行、响应起始行

首部(头):请求头、响应头、通用头

主体:请求主体、响应主体

General 通用头

Request URL: 请求地点 Request Method: GET 请求方法:GET/POST/DELETE/PUT/HEAD/OPTION... Status Code: 304 Not Modified 响应的HTTP状态码 Remote Address: 125.39.174.137:80 主机地点(处事器外网IP地点) Referrer Policy: no-referrer-when-downgrade

Request Headers 请求头 [客户端设置,处事器接收]

GET / HTTP/1.1 =>起始行(描述当前请求的一些根基信息:用的是1.1版本传输协议进行内容传输的) Host: Connection: keep-alive Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 Cookie: ... =>cookie信息一般都是放到头文件中实现和处事器真个数据通信的 If-Modified-Since: Sun, 06 May 2018 10:02:42 GMT

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/33056.html