首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从输入URL到Web页面呈现的全过程

当用户在浏览器的地址栏中输入 URL 并点击回车后,页面是如何呈现的。 简单来说,当用户在浏览器的地址栏中输入 URL 并点击回车后,浏览器从服务端获取资源,然后将内容显示在页面上。...为了提高系统的可用性、性能,整个过程中的很多环节都需要部署多节点。 浏览器 当用户在浏览器的地址栏中输入 URL 并点击回车后,首先由浏览器进行处理。...浏览器缓存 当用户在浏览器的地址栏中输入 URL 并点击回车后,浏览器会查看自己是否缓存了该资源。...如果没有命中协商缓存,那么服务器返回浏览器请求的资源。 DNS 域名解析 当用户在浏览器的地址栏中输入 URL 并点击回车后,浏览器要判断 URL 中的是 IP 地址,还是域名。...图片 TCP / IP 模型的通信 图片 发送数据包 当用户在浏览器的地址栏中输入 URL 并点击回车后,首先由浏览器进行处理,这些处理相当于应用层功能。

83330
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    从输入URL到渲染的完整过程1

    浏览器有一个重要的安全策略,称之为「同源策略」其中,源=协议+主机+端口,**两个源相同,称之为同源,两个源不同,称之为跨源或跨域同源策略是指,若页面的源和页面运行过程中加载的源不一致时,出于安全考虑,...JSONP的做法是:当需要跨域请求时,不使用AJAX,转而生成一个script元素去请求服务器,由于浏览器并不阻止script元素的请求,这样请求可以到达服务器。...ajax 跨域请求是简单请求时,会发生以下的事情请求头中会自动添加Origin字段比如,在页面http://my.com/index.html中有以下代码造成了跨域// 简单请求fetch('http:...HTTP/1.1 200 OKDate: Tue, 21 Apr 2020 08:03:35 GMT...Access-Control-Allow-Origin: http://my.com...添加用户成功可以看出...cookie// xhrvar xhr = new XMLHttpRequest();xhr.withCredentials = true;// fetch apifetch(url, { credentials

    66840

    从输入URL到页面可交互的过程探究之一:从服务端到客户端

    原文:https://alistapart.com/article/server-to-client/ 最近发现国外有一个系列,专门探究从输入URL到页面可交互的详细过程,是一份干货十足的好资料。...有几种方法可以实现访问:在地址栏中输入URL、点击(或触碰)一个页面上或其他app中的超链接、或者点击你的收藏。无论是哪种情况,都会触发一个动作——导航。...在如下场景中,资源提示是很有用的,比如一个用户在必应的搜索结果页,而通常的预期中,前几条搜索结果是最有可能被用户访问的。...截至目前,被请求的导航URL已经输入到了浏览器的历史中,这样它就可以被用于浏览器导航的前进和后退功能了。 这里有一张更详细的流程图,它可以让你对目前讨论的内容有个总体的概览: ?...实际应用中,当我们使用不同的URL来指向不同版本的同一份资源时,我们就可以采用这种做法,而非对同一个URL的资源进行更改,因为被缓存的版本会一直被使用且不会去发送请求。

    1.5K30

    从输入URL到页面加载完的过程中都发生了什么事情

    一个HTTP请求的过程 为了简化我们先从一个HTTP请求开始,简要介绍一下一个HTTP求情的网络传输过程,也就是所谓的“从输入 URL 到页面下载完的过程中都发生了什么事情” ●DNS Lookup 先获得...URL对应的IP地址 ●Socket Connect 浏览器和服务器建立TCP连接 ●Send Request 发送HTTP请求 ●Content Download 服务器发送响应 如果下到物理层去讲就有点耍流氓了...服务器上的缓存 当然DNS缓存失效期通常都比较短,很多情况下都要再去查找,为了降低用户体验到的延迟(注意这里不是网络延时)预取是一个不错的方法。...chrome用户可以看一下 chrome://predictors/ 你就知道了。...对于小的HTTP消息,头部的比重还是很大的,而现在的web中存在大量小消息。

    1.5K100

    从输入网址到页面呈现的过程

    WEB应用的本质 1、用户请求远程资源 2、浏览器查找远程资源,打包用户请求并发送 3、服务器根据请求,通过逻辑计算,回复结果给浏览器 4、浏览器解析结果,呈现给用户 过程: 1、根据URL查找服务器地址...路由器缓存》ISP DNS缓存》根服务器) 2、建立TCP/IP连接(三次握手),打包并发送请求 3、服务器收到请求,交给相关进程处理 4、服务器处理请求并响应,发送结果给浏览器(状态码:304,本地有缓存的资源请求服务器时...,服务器判断若没有修改,返回状态码,不再发送数据) 5、浏览器接收结果并解析(先渲染树,然后DOM树(边下载边渲染)) 6、处理页面嵌入资源和异步请求

    77970

    【前端】从输入URL到页面加载完成的过程中都发生了什么事情

    把URL分割成几个部分:协议(http, https)、网络地址(xxx.xxx.xxx.xxx)、资源路径(/xxx/xxx.xx)、端口号(默认80)。...向2和3确定的IP和端口号发起网络连接。 根据http协议要求,组织一个请求的数据包,里面包含大量请求信息(包括请求的资源路径、你的身份等)。 服务器响应请求,将数据返回给浏览器。...数据可能是根据HTML协议组织的网页,里面包含页面的布局、文字。数据也可能是图片、脚本程序等。...如果上一步返回的是一个页面,根据页面里一些外链的URL,例如图片的地址,按照1~5再次获取。...开始根据资源的类型,将资源组织成屏幕上显示的图像,这个过程叫渲染,网页渲染是浏览器最复杂、最核心的功能。 将渲染好的页面图像显示出来,并开始响应用户的操作。

    13320

    从输入URL到渲染的过程中到底发生了什么?

    CDN缓存DNSTCP三次握手、四次挥手浏览器渲染过程输入URL到页面渲染过程的一些优化下面我将“从输入URL到渲染的全过程”大概的描述出来,再对其过程加以解释,了解过程中可以做哪些优化。...1、URL解析2、DNS解析3、建立TCP链接4、客户端发送请求5、服务器处理和响应请求6、浏览器解析并渲染响应内容7、TCP四次挥手断开连接一、URL解析地址解析和编码我们输入URL后,浏览器会解析输入的字符串...选择的依据:用户的ip地址,判断哪台服务器距离用户最近,根据用户请求的url中携带的内容名称判断哪台服务器上有用户要的数据,查询各个服务器当前负载情况,判断哪台服务器有服务能力。...如果缓存时间长,数据更新了,边缘节点的内容都还没更新,开发者对特定的任务做特定的数据缓存时间管理。...表达式 结语通过阅读本文,相信小伙伴们对从输入URL到页面渲染的过程有了一个大概的理解。

    1.6K40

    浏览器从输入网址到页面展示的过程

    TCP 渲染 浏览器从输入网址到渲染页面主要分为以下几个过程 URL 输入 DNS 解析 建立 TCP 连接 发送 HTTP / HTTPS 请求(建立 TLS 连接) 服务器响应请求 浏览器解析渲染页面...URL 输入 URL地址 URL(统一资源定位符,Uniform Resource Locator)用于定位互联网上资源,俗称网址。...我们在地址栏输入 HZFE 官方网址 hzfe.org 后敲下回车,浏览器会对输入的信息进行以下判断: 检查输入的内容是否是一个合法的 URL 链接。 是,则判断输入的 URL 是否完整。...否,将输入内容作为搜索条件,使用用户设置的默认搜索引擎来进行搜索。 大部分浏览器会从历史记录、书签等地方开始查找我们输入的网址,并给出智能提示。 2....查询通常遵循以上流程,从请求主机到本地 DNS 服务器的查询是递归查询,DNS 服务器获取到所需映射的查询过程是迭代查询。 3.

    19.9K75

    阿里面试:“说一下从 url 输入到返回请求的过程”

    问题: 从浏览器地址栏输入url到请求返回发生了什么 你一看这种烂掉牙的问题,小case,但996面试大佬由此延展的问题已经远远超越了这个问题本身了,不信你就接着看。...我回答了首先会进行 url 解析,根据 dns 系统进行 ip 查找。 话音刚落,此时一位喜欢修福报的公司的大佬打断了我,说url为啥要解析,dns查询规则是什么?..."dns-prefetch" href="http://bdimg.share.baidu.com" /> 终于抗过了第一轮的猛问,接着我继续说从浏览器地址栏输入url到请求返回发生了什么?...然后服务器的上层协议传输层协议开始发挥作用,根据tcp包里的端口号,让服务器特定的服务来处理到来的数据包,并且tcp是面向字节流的(tcp有四大特性,可靠传输、流量控制、拥塞控制、连接管理),所以我们node...的样式信息,避免过度触发回流; 减少通过JavaScript代码修改元素样式,尽量使用修改class名方式操作样式或动画; 动画尽量使用在绝对定位或固定定位的元素上; 隐藏在屏幕外,或在页面滚动时,尽量停止动画

    61720

    从输入 URL 到浏览器接收的过程中发生了什么事情?

    从触屏到 CPU 首先是「输入 URL」,大部分人的第一反应会是键盘,不过为了与时俱进,这里将介绍触摸屏设备的交互。...从操作系统 GUI 到浏览器 前面提到 Linux 内核已经完成了对硬件的抽象,其它程序只需要通过监听 /dev/input/event0 文件的变化就能知道用户进行了哪些触摸操作,不过如果每个程序都这么做实在太麻烦了...从浏览器到浏览器内核 前面提到操作系统 GUI 将输入事件传递到了浏览器中,在这过程中,浏览器可能会做一些预处理,比如 Chrome 会根据历史统计来预估所输入字符对应的网站,比如输入了「ba」,根据之前的历史发现...接着是输入 URL 后的「回车」,这时浏览器会对 URL 进行检查,首先判断协议,如果是 http 就按照 Web 来处理,另外还会对这个 URL 进行安全检查,然后直接调用浏览器内核中的对应方法,比如...可以有很多判断方法: 用户设置,在浏览器中可以指定页面编码 HTTP 协议中 中的 charset 属性值 对于 JS 和 CSS 对于 iframe 如果在这些地方都没指明,浏览器就很难处理

    82430

    阿里面试官:“说一下从 url 输入到返回请求的过程” | 极客时间

    作为开发工程师,理解浏览器是如何工作的,对我们做业务的技术选型、架构设计等都有非常重要的作用,让我们可以准确评估 Web 开发项目的可行性,站在更高维度审视页面,以及在快节奏的技术迭代中把握住问题的本质...可是我发现,大部分前端工程师对浏览器的理解,其实并不深入透彻。比如,一道大家都熟悉的面试题:“在浏览器里,从输入 URL 到页面展示中间发生了什么?”...这道题涉及到网络、操作系统、Web 等一系列的知识,如果你要开发流畅的页面,或者诊断 Web 页面中的性能问题,那你就需要了解 URL 是怎么变成页面的,只有弄懂这些之后,你才可以站在全局的角度定位问题或者写出高效的代码...普遍说整体读起来的感觉,就是通俗易懂,深入浅出,让我把浏览器,把网络、页面渲染、JavaScript、浏览器安全、V8 原理等知识都串联起来,对整个前端体系有了全新的认识。...大家都知道,网吧的电脑环境异常复杂,页面劫持经常发生,再加上每天千万级别的启动量, 对页面安全、加载速度和流畅度都有很高的要求。

    43930

    玩转谷歌优化(Google Optimize)

    02 输入你的实验名称、编辑器页面以及要运行的实验类型。编辑器页面是利用可视化编辑器进行修改的页面。 例如,如果你正在博客页面上运行实验,请输入一个进入博客的URL。...URL定向对于在特定的一组网页上展示实验变量非常有用,只需URL就可轻松定义。你可以定向单个页面、一组页面、甚至是主机和路径。 受众群体(仅限360)定向你在GA中创建的目标受众群体。...谷歌优化360允许将你的实验定向到GA的受众群体。这样,你就可以将实验集中在你的网站上展示特定行为的一群用户。 行为定向从特定渠道或来源到达你的网站的用户。...技术定向从特定浏览器、操作系统或设备访问的用户。谷歌优化会查看浏览器的用户代理字符串,以确定其正在使用哪个浏览器、什么版本和哪个操作系统。你可以在谷歌优化中将这些数据用作定向条件。...以…结束/非…结束 输入的值与URL结尾的完全匹配。你可以定向URL末尾为“/thankyou.html”的购物车页面。

    3.8K70

    AJAX 前端开发利器:实现网页动态更新的核心技术

    getResponseHeader() 从服务器响应返回特定的标头信息 示例 var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange =...以下示例演示了如何在用户在输入字段中输入字符时,网页可以与Web服务器通信: 示例说明 在上述示例中,当用户在输入字段中键入字符时,将执行名为 "showHint()" 的函数。...> 在上述示例中,当用户在输入字段中输入字符时,通过AJAX与服务器通信,并从PHP文件中获取相应的建议。建议将在 "txtHint" 元素中显示。...以下示例演示了如何在用户在输入字段中输入字符时,网页可以与Web服务器通信: 示例说明 在上述示例中,当用户在输入字段中键入字符时,将执行名为 "showHint()" 的函数。...将请求发送到服务器上的文件 注意,将一个参数(q)添加到 URL(带有下拉列表的内容) AJAX 服务器页面 - "getcustomer.php" 由上面的 JavaScript 调用的服务器上的页面是一个名为

    13400

    【译】Web中的图像技术总结,前端开发中各种图片引入的优点缺点及实例

    CSS背景图片 当使用CSS背景显示图片时,它需要一个具有内容或特定宽度或高度的元素。通常,背景图片的主要用途应该是用于装饰目的。 2.1 如何使用CSS背景图片 简单来说,我们需要一个元素。...然而,如果我们想要阻止用户下载特定的图像,这可能是一件好事。至少,它将减少下载图像的机会很容易。 Demo 4....现在,我们可以轻松地更新 --bg-url 变量,这将动态更改背景。这比内联的CSS好一百万倍。...解决方案1要点: 解决方案只有在图像不重要的情况下才是好的 当无法从后端CMS动态更改图片时 Demo 4.1.2 Hero - 解决方案2 对于此解决方案,我们将使用HTML图像。...对于包含说明性步骤的菜谱,重要的是将它们打印出来,否则用户将无法从打印web页面中获得任何好处。

    5.6K20

    Rxjs 响应式编程-第六章 使用Cycle.js的响应式Web应用程序

    将最终值附加到Wikipedia的API URL。 太棒了! 到目前为止,我们有生成UI的功能和从该UI检索用户输入的功能。我们现在需要添加将从维基百科获取信息的功能。...在这之后,当我们在输入框中引入搜索词时,我们应该已经在查询维基百科,但由于我们没有将JSONP输出连接到任何内容,我们在页面上看不到任何更改。...无论我们重新呈现页面多少次,虚拟DOM将始终确保仅呈现差异,从而使其非常高效。 如果虚拟DOM没有更改,则不会在页面中呈现任何更改。 这样我们就不必担心添加或删除元素了。...它从intent中获取已处理的用户输入,并输出有关视图消耗的数据更改的事件。 视图是我们模型的直观表示。 它采用具有模型状态的Observable,并输出所有潜在的DOM事件和页面的虚拟树。...意图是MVI中的新组件。意图从用户获取输入并将其转换为我们模型中的操作。

    3.2K30

    教程|Python Web页面抓取:循序渐进

    从定义浏览器开始,根据在“ web驱动和浏览器”中选择的web驱动,应输入: 导入2.jpg 选择URL Python页面抓取需要调查的网站来源 URL.jpg 在进行第一次测试运行前请选择URL...创建基本应用程序,建议选择简单的目标URL: ✔️不要将数据隐藏在Javascript元素中。有时候需要特定操作来显示所需的数据。从Javascript元素中删除数据则需要更复杂的操作。...选择要访问的登录页面,将URL输入到driver.get(‘URL’)参数中。Selenium要求提供连接协议。因此,始终需要在URL上附加“ http://”或“ https://”。...最简单的方法之一是重复上面的代码,每次都更改URL,但这种操作很烦。所以,构建循环和要访问的URL数组即可。 ✔️创建多个数组存储不同的数据集,并将其输出到不同行的文件中。...添加“scrollto()”或使用特定的键控制滚动条。创建爬虫模式时,几乎不可能列出所有可能的选项。 ✔️创建监控流程。某些网站上的数据可能对时间(甚至用户)敏感。

    9.2K50

    计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session

    二、浏览器中输入URL返回页面过程(重)三、HTTP状态码四、HTTP相关协议对比4.1 HTTP和HTTPS的区别(重)4.2 HTTP1.0和HTTP1.1的区别4.3 HTTP1.1和HTTP2.0...服务端给特定的用户创建特定的Session之后就可以标识这个用户并且跟踪这个用户了(一般情况下,服务器会在一定时间内保存这个Session,过了时间限制,就会销毁这个Session)。...二、浏览器中输入URL返回页面过程(重)浏览器中输入域名解析域名,找到主机ip浏览器与目标服务器建立TCP连接。浏览器利用IP直接与网站主机通信,三次握手、建立TCP连接。...,并封装成头帧和数据帧,使用特定算法压缩头帧。...请求中包含访问的URL,也就是http://www.baidu.com/ ,KeepAlive,长连接,还有User-Agent用户浏览器操作系统信息,编码等。

    14710

    必须要会的 50 个React 面试题(下)

    key 用于识别唯一的 Virtual DOM 元素及其驱动 UI 的相应数据。它们通过回收 DOM 中当前所有的元素来帮助 React 优化渲染。...这对初始渲染非常有用,并且可以优化应用性能,从而提供更好的用户体验。 开发人员工具 - 从操作到状态更改,开发人员可以实时跟踪应用中发生的所有事情。...Router 用于定义多个路由,当用户定义特定的 URL 时,如果此 URL 与 Router 内定义的任何 “路由” 的路径匹配,则用户将重定向到该特定路由。...主题 常规路由 React 路由 参与的页面 每个视图对应一个新文件 只涉及单个HTML页面 URL 更改 HTTP 请求被发送到服务器并且接收相应的 HTML 页面 仅更改历史记录属性 体验 用户实际在每个视图的不同页面切换...用户认为自己正在不同的页面间切换 希望这套 React 面试题和答案能帮你准备面试。

    3.5K21
    领券