首页 > 其他分享 >面试题One:在浏览器输入一个URL然后回车,发生了什么?

面试题One:在浏览器输入一个URL然后回车,发生了什么?

时间:2024-10-10 15:12:59浏览次数:1  
标签:面试题 HTTP 请求 URL 报文 浏览器 应用层

浏览器做的第一步就是解析 URL 得到里面的参数,将域名和需要请求的资源分离开来,从而了解需要请求的是哪个服务器,请求的是服务器上什么资源等等。
应用层:
浏览器封装HTTP请求报文
DNS解析域名获得目标服务器地址

传输层:
建立连接
把应用层传过来的HTTP请求报文进行分割,并在各个报文上打上标记序号及端口号转发给网络层
网络层:
利用ARP协议根据IP地址获取作为通信目的地的MAC地址后转发给链路层
服务端在链路层收到数据,按序往上层发送,一直到应用层接收到浏览器发送来的HTTP请求报文,然后处理该请求返回HTTP响应报文,浏览器接收到响应报文之后解析渲染页面。最后TCP断开连接。
详情:https://www.cnblogs.com/cswiki/p/14429730.html

标签:面试题,HTTP,请求,URL,报文,浏览器,应用层
From: https://www.cnblogs.com/helStrive/p/18456411

相关文章

  • Curl一些基础用法
    这几天遇到一个很好用的工具,curl以下是curl的一些基础用法。url是一个非常强大的命令行工具,用于传输数据,支持多种协议,如HTTP、HTTPS、FTP等。以下是一些基本的curl语法和常用命令:基本语法curl[选项][URL...]常用选项-v,--verbose:详细模式,显示通信的整个过程。-s,--s......
  • <Project-8.1 pdf2tx-MM> Python Flask 用浏览器翻译PDF内容 2个翻译引擎 繁简中文结果
    更新ProjectName:pdf2tx(P6)Date:5oct.24Function:在浏览器中翻译PDF文件Code:https://blog.csdn.net/davenian/article/details/142723144升级ProjectName:pdf2tx-mm(P8)7oct.24 加入多线程,分页OCR识别,提高性能与速度使用googletranslator, AzureAPI做......
  • Spring事务的1道面试题
    每次聊起Spring事务,好像很熟悉,又好像很陌生。本篇通过一道面试题和一些实践,来拆解几个Spring事务的常见坑点。原理Spring事务的原理是:通过AOP切面的方式实现的,也就是通过代理模式去实现事务增强。具体过程是:对包含@Transactional注解的方法进行拦截,然后重写,重新在方法里加入异......
  • 浏览器报错 | 代理服务器可能有问题,或地址不正确
    问题描述Windows连网情况下,浏览器访问地址显示“你尚未连接,代理服务器可能有问题,或地址不正确。”解决方法电脑右下侧的WiFi图标右键,打开网络和Internet设置打开代理打开自动设置代理的“自动检测设置”关闭手动设置代理的“使用代理服务器”这样就可以正......
  • 浏览器证书机构不正确
    现象某些网站使用的是let'sencrypt的免费证书,但是浏览器上查看证书提示机构为EndpointRootCA。这将会导致需要从浏览器导出证书时,得到的证书无法使用。常见的使用场景是导出这个证书到docker或containerd的私有证书信任/etc/docker|containerd/certs.d。解决方案目前......
  • 面试 - 速刷面试题 - 知识深度
    如何检测JS内存泄漏?JS内存泄露场景有哪些?垃圾回收GC:引用计数算法、标记清除。引用计数......
  • 记录一道面试题(哈希表 稀疏矩阵)
    题目:有一个游戏中的三维地图,是由i,j,k三个轴组成的三维网络。每个立方体由不同的种类代表,比如空气,水,沙子,泥土。地图上方的空气方块,不会经常变动且数量占大多数,下方是各种类型的方块,会经常相互转换(水变沙子,沙子变泥土等)。问题:请你实现一个存储该地图的方案(地图方块和对应类型)。要......
  • 高效Selenium测试技巧:轻松控制已开启的浏览器
    此文章来源于项目官方公众号:“AirtestProject”版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途一、前言在日常做Selenium测试的时候,总是遇到网页需要登录的情况,上次我们在做Selenium专题的时候,有讲过一个自动刷B站的案例,里面涉及到了登录的情况,详细推文点击......
  • MyBatis的常见面试题
    MyBatis1、什么是MyBatisMyBatis是一款优秀的半自动化的持久层框架。支持自定义SQL、存储过程以及高级映射。2、MyBatis的特点?简单、灵活、解耦、丰富的标签3、MyBatis的核心组件全局配置文件:MyBatis的一些全局信息,包含数据库链接信息和MyBatis运行时所需要的各种特性,以及......
  • 浏览器指纹修改指南2024 - 命令行控制SpeechVoice指纹(七)
    引言在前几篇文章中,我们深入探讨了如何通过修改Chromium源码来定制化SpeechVoice,从而实现浏览器指纹的修改。这些方法虽然有效,但对于一些用户来说,直接修改源码可能显得过于复杂和繁琐。为了简化这一过程,本篇文章将介绍如何通过命令行来自定义浏览器指纹。通过命令行工具,您可......