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

garfielder007 garfielder007     2023-04-23     188

关键词:

解析URL

当你在浏览器中输入URL并敲回车之后,浏览器会把URL分成几部分:

  • 1、协议:从计算机获取资源的方式,常见的HTTP、FTP等
  • 2、网络地址:域名或者IP,指示网络中的哪一台计算机
  • 3、资源路径:指示在该计算机上获取哪一个资源

DNS域名解析

当浏览器发现网络地址并不是IP,而是域名的时候,浏览器会向DNS服务器发送请求,查找域名对应的IP,如果该DNS服务器没有找到该域名对应的IP,那吗会向上级请求,直到根节点,结果只有两个:要吗找到了,要吗找不到。 (你电脑里的网络设置里面有DNS的服务器IP)

扩展:例如百度、淘宝这些访问量及其大的网站,在DNS域名解析时,在不同的区域或不同网络下解析出来的IP可能是不同的,这就涉及负载均衡的第一步:在DNS解析域名时,将你的访问分配到不同的入口,同时尽可能保证你访问的入口是在所有入口中可能较快的一个。

确定端口

如果网络地址中不包含端口,那么会使用协议默认的端口。HTTP协议默认端口是80,HTTPS协议默认端口是443

发送HTTP请求

当浏览器对域名完成一系列的解析之后,就会构建一个HTTP请求,HTTP属于应用层协议,真正的数据传输是传输层协议TCP完成的,这就涉及到TCP建立连接的“三次握手”:

  • 1、发送端发送带有 SYN 标志的数据包给接收端,并在一定的延迟时间内等待回复
  • 2、接收端收到数据包后传回一个带有 SYN/ACK 标志的数据包以示确认传达信息
  • 3、发送端收到信息后还会发送一个带有 ACK 标志的数据包给接收端以示握手成功,连接建立完成

服务器处理并响应请求

服务器收到客户端发送的HTTP请求后,分析请求报文,并查找相应的请求资源,并返回响应报文。

响应报文中包含一个重要的信息,状态吗:

常见的 4 开头的状态吗一般表示请求出了问题,如 404 表示请求的资源不存在 3 开头的状态吗一般表示重定向,如 301表示永久重定向 5 开头的状态吗一般表示服务器出了问题,如 500 表示服务器出错 2 开头的一般代码成功,如 200

页面渲染

请查看 浏览器渲染页面的过程

 

from: http://blog.poetries.top/js-knowledge-note/#/note/http/url-render

一个页面从输入url到页面加载显示完成,这个过程中都发生了什么?

一个页面从输入URL到页面加载显示完成,这个过程中都发生了:1.浏览器补全URL地址在输入完URL之后,浏览器会自动检查该地址是否完整,例如是否有添加https协议,若发现不完整,会自动补全。2.向DNS查询IP地址每个域名都对应... 查看详情

一个页面从输入url到页面加载显示完成的过程中都发生了什么

前端面试/笔试必考问题,越详细越好先简单得讲:浏览器根据请求的URL交给DNS域名解析,找到真实IP,向服务器发起请求;   服务器交给后台处理完成后返回数据,浏览器接收文件(HTML、JS、CSS、图象等);  ... 查看详情

从输入url到页面加载完成的过程中都发生了什么

根据URL请求页面过程过程概述浏览器查找域名对应的IP地址;浏览器根据IP地址与服务器建立socket连接;浏览器与服务器通信:浏览器请求,服务器处理请求;浏览器与服务器断开连接。天啦撸,结束了?也太简单了吧。。。各... 查看详情

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

过程概述浏览器查找域名对应的IP地址;浏览器根据IP地址与服务器建立socket连接;浏览器与服务器通信:浏览器请求,服务器处理请求;浏览器与服务器断开连接。以下为详细解析:根据域名查找IP地址概念解释IP地址:IP协议为... 查看详情

一个页面从输入url到页面加载显示完成,这个过程中都发生了什么?

<divstyle="background:#ff6a00;color:#0;font-size:small;">   <p>           作者:        查看详情

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

解析URL当你在浏览器中输入URL并敲回车之后,浏览器会把URL分成几部分:1、协议:从计算机获取资源的方式,常见的HTTP、FTP等2、网络地址:域名或者IP,指示网络中的哪一台计算机3、资源路径:指示在该计算机上获取哪一个资... 查看详情

爱创课堂每日一题第五十七天-一个页面从输入url到页面加载显示完成,这个过程中都发生了什么?

分为4个步骤:    (1),当发送一个URL请求时,不管这个URL是Web页面的URL还是Web页面上每个资源的URL,浏览器都会开启一个线程来处理这个请求,同时在远程DNS服务器上启动一个DNS查询。这能使浏览器获得请求对... 查看详情

从输入url到页面加载显示完成的过程

前言:“一个页面从输入URL到页面加载显示完成,这个过程中都发生了什么?”这个问题我想大多数人都不会陌生,好像是前端面试题经常会出现的,在此我也好好梳理梳理了一番,总结成这篇文章,希望能对和我一样在前端道... 查看详情

一个页面从输入url到页面加载显示完成,这个过程中发生了什么?

1.浏览器通过DNS查找域名对应的IP地址(DNS查询:浏览器缓存-->系统缓存-->路由器缓存-->ISPDNS缓存-->根域名服务器)2.浏览器向Web服务器发送一个HTTP请求(TCP三次握手)3.服务器301重定向(从http://example.com重定向到http://ww... 查看详情

面试题系列---一个页面从输入url到页面加载显示完成,这个过程都发生什么?

一个页面从输入URL到页面加载显示完成,这个过程都发生什么?1.在浏览器中输入url2.浏览器访问dns服务器,根据域名查找对应的ip3.通过ip找到服务器,建立tcp连接4.发送http请求5.后端服务器接收请求,处理后响应给浏览器6.浏览... 查看详情

从输入url到页面加载发生了什么

...蛮适合我。原文链接https://segmentfault.com/a/1190000006879700从输入URL到页面加载发生了什么最近在进行前端面试方面的一些准备,看了网上许多相关的文章,发现有一个问题始终绕不开:在浏览器中输入URL到整个页面显示在用户面前时... 查看详情

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

从输入URL到浏览器接收的过程中发生了什么事情?WhatreallyhappenswhenyounavigatetoaURL上面两篇文章都解读的很好,值得阅读。接下来在总结一下这个过程:  1、首先,会查询缓存,如果缓存存在的话则直接响应,否则继续下面... 查看详情

从输入url到页面加载发生了什么

从输入URL到页面加载发生了什么转自:https://segmentfault.com/a/1190000006879700作者写得很不错,作者忽略了的,我加了上去,完善了一些,如get与post的区别等总体来说分为以下几个过程:DNS解析TCP连接发送HTTP请求服务器处理请求并返... 查看详情

一个页面从输入url到加载显示完成,发生了什么?

面试经典题——URL加载一、涉及基本知识点:1.计算机网络五层因特尔协议栈:应用层(dns、http):DNS解析成IP并完成http请求发送;传输层(tcp、udp):三次握手四次挥手模式建立tcp连接;网络层(IP、ARP):IP寻址;数据链路... 查看详情

从输入一个url到加载页面发生了什么?

  惭愧了,很久之前被面试的时候也有面试官问了我这个问题,但是当时回答的很不满意,于是回头看了很多资料,现在也整理一下。  大致可总结为以下几个步骤:  1.DNS解析。  2.TCP链接。  3.发送HTTP请求。  4.... 查看详情

从输入url到页面加载发生了什么

一、从输入URL到页面加载发生了什么1、在浏览器中输入URL如:https://www.cnblogs.com/loveapple/URL分成协议、地址、路径三部分协议:http、https、ftp地址:www.cnblogs.com、localhost:4000路径:/loveapple/2、通过DNS解析获得对应的IP地址DNS作用:... 查看详情

经典面试题:一个页面从输入url到加载显示完成,发生了什么?(转)

一、涉及基本知识点:1.计算机网络五层因特尔协议栈:应用层(dns、http):DNS解析成IP并完成http请求发送;传输层(tcp、udp):三次握手四次挥手模式建立tcp连接;网络层(IP、ARP):IP寻址;数据链路层(PPP):将请求数据... 查看详情

从浏览器输入url到页面加载完成都发生了什么

一个http请求的过程简要介绍一下一个http请求的网络传输过程:DNSLookup先获得URL对应的IP地址SocketConnect浏览器和服务器建立TCP连接SendRequest浏览器发送HTTP请求ContentDownload服务器发送响应接下来讲讲这里存在的性能问题:如果你对D... 查看详情