浏览器工作原理-导航流程:从输入URL到页面展示,这中间发生了什么?

  1. 地址栏判断是url还是搜索内容,如果是搜索内容,会使用浏览器默认搜索引擎加上搜索内容合成url;如果是域名则会加上协议合成完整的url
  2. 然后按下回车。浏览器进程通过IPC(进程间通信)把url传给网络进程(网络进程接收到url才发起真正的网络请求)。
  3. 网络进程接收到url后,先查找有没有缓存。如果有缓存,直接返回缓存资源。如果没有缓存(进入真正的网络请求),首先获取域名的IP,系统会首先从host文件中寻找域名对应的IP地址,一旦找到就和服务器建立TCP连接;如果没有找到,系统则会将网址交给DNS域名解析服务器进行IP解析
  4. 利用IP和服务器进行TCP连接(三次握手)
  5. 建立连接后,浏览器构建数据包(包含请求行,请求头,请求正文并把域名相关的cookie等数据附加到请求头),然后向服务器发送请求
  6. 服务器根据收到的请求构建响应数据(包括响应行,响应头,响应正文),然后返回给网络进程
  7. 网络进程收到数据后进行解析,如果发现响应行的返回的状态码为301,302,说明服务器要我们去找别人要数据,找谁呢?找响应头中的Location字段要,Location的内容是需要重定向的地址url。获取到这个url一切重新来过。如果返回的状态码为200,说明服务器返回了数据。
  8. 获取到数据以什么方式打开呢?打开的方式不对的话也不行。打开的方式就是 Content-Type。这个属性告诉浏览器服务器返回的数据是什么类型的。如果返回的是网页类型则为 text/html,如果是下载文件类型则为 application/octet-stream 等等。打开
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值