地址栏输入url到显示画面

  1. URL输入与解析

    浏览器判断输入的是否是合法url,如果不是合法url会进行默认搜索

    判断是否为合法url: 有合法协议头(如http://,https://,about:等)直接视为合法url=>没有协议头尝试解析为域名或IP(包含.,不全为数字是域名,全为数字是IP,不能包含空格,特殊字符(连字符除外))

    如果是url会进行url解析,提取协议,域名,端口,查询参数等

  2. DNS解析

    缓存查找: 在主机,路由器中的缓存中查找

    递归查找: 缓存查找找不到则向主机配置的本地DNS服务器发请求,本地DNS则依次向根域名,顶级域名,二级域名服务器发出请求依次查找直到找到目标服务器的IP

  3. TCP连接

    TCP三次握手: SYN=>SYN+ACK=>ACK

    TLS握手(HTTPS有这个): 客户端发送支持的密码套件和客户端随机数A=>服务端发送数字证书(包含公钥),选择的密码套件和服务端随机数B=>客户端认证数字证书,生成一段随机数作为预主密钥用公钥加密发送=>服务端用私钥解密,服务端和客户端都用相同的算法对(预主密钥,A,B)进行加密得到密钥

  4. 服务器处理并返回响应

  5. 浏览器接收并渲染

相关推荐
Avan_菜菜1 小时前
AI 能写代码了,为什么我反而开始要求它先写文档?
前端·github·ai编程
爱勇宝5 小时前
鸿蒙生态的下半场:开发者不只要能开发,还要能赚钱
android·前端·程序员
IT_陈寒8 小时前
SpringBoot这个自动配置坑我跳了三次
前端·人工智能·后端
kyriewen9 小时前
我用 AI 一周写完了整个项目,上线第一天就崩了——这是我踩过最贵的 5 个坑
前端·javascript·ai编程
牧艺9 小时前
从零到协同:构建类飞书在线文档系统的五个技术重难点
前端·人工智能
红尘散仙10 小时前
想写一个像样的终端 App?试试把 React 的开发体验搬进 Rust TUI
前端·rust
袋鼠云数栈UED团队10 小时前
一套 Spec-First 的 AI 编程工作流
前端·人工智能
袋鼠云数栈前端11 小时前
一套 Spec-First 的 AI 编程工作流
前端·ai+
angerdream11 小时前
Android手把手编写儿童手机远程监控App之vue3 路由守卫
前端
不服老的小黑哥11 小时前
AI规范驱动编程-harness工程项目实战
前端