http --- 从输入URL到页面加载的过程发生了什么?
2024-08-31 11:49:55
可以分为这几个大的过程:
- DNS解析
- TCP连接
- 客户端发送HTTP请求
- 服务器处理请求并返回HTTP报文
- 浏览器解析渲染页面
- 结束
其中(1)DNS解析可以理解为主寻找这个IP地址的过程,其中如果找到IP地址会进行本地缓存,以便下次继续使用
(2)HTTP协议是使用TCP作为其传输层协议的
(3)HTTP请求报文是由三部分组成: 请求行, 请求报头和请求正文。
(4)HTTP响应报文也是由三部分组成: 状态码, 响应报头和响应报文。
状态码是由3位数组成,第一个数字定义了响应的类别,且有五种可能取值:
1xx:指示信息–表示请求已接收,继续处理。
2xx:成功–表示请求已被成功接收、理解、接受。
3xx:重定向–要完成请求必须进行更进一步的操作。
4xx:客户端错误–请求有语法错误或请求无法实现。
5xx:服务器端错误–服务器未能实现合法的请求。
平时遇到比较常见的状态码有:200, 204, 301, 302, 304, 400, 401, 403, 404, 422, 500(分别表示什么请自行查找)。
响应报头:常见的响应报头字段有: Server, Connection...。
响应报文:服务器返回给浏览器的文本信息,通常HTML, CSS, JS, 图片等文件就放在这一部分。
(5)浏览器一边解析一边渲染
(6)结束
最新文章
- 序列化类型 System.Data.Entity.DynamicProxies 的对象时检测到循环引用
- [CareerCup] 2.5 Add Two Numbers 两个数字相加
- Flask 备注一(单元测试,Debugger, Logger)
- PHP的 Mysqli扩展库的多语句执行
- iOS应用内付费(IAP)开发步骤列表
- android user版本默认开启调试模式
- hdu2457DNA repair(ac自动机+dp)
- 100 high quality blogs from java developers
- 7月19日Docker&Kubernetes技术沙龙总结 - DockOne.io
- Microsoft Fakes进行单元测试
- hdu 4515 年月份模拟题
- mac git 的安装 及实现自动补全
- Windows上设置Mozilla Thunderbird邮件客户端后台运行
- 3、java面向对象编程
- week1 - Python基础1 介绍、基本语法、流程控制
- Freeradius服务器的搭建流程
- .net 4.0 中的特性总结(四):Tuple类型
- 在jsp的js和css里面使用EL表达式取值|style里面用$取值
- CRF分词的纯Java实现
- java与C#、.NET AES加密、解密 解决方案