当前位置: 首页 > news >正文

网站建设与维护婚庆网站开发的意义

网站建设与维护,婚庆网站开发的意义,软件平台和系统的区别,化妆网站源码HTTP 是一种允许浏览器向服务器获取资源的协议,是 Web 的基础,通常由浏览器发起请求,用来获取不同类型的文件,例如 HTML 文件、CSS 文件、JavaScript 文件、图片、视频等。 浏览器端发起 HTTP 请求流程: 1. 构建请求…

HTTP 是一种允许浏览器向服务器获取资源的协议,是 Web 的基础,通常由浏览器发起请求,用来获取不同类型的文件,例如 HTML 文件、CSS 文件、JavaScript 文件、图片、视频等。

浏览器端发起 HTTP 请求流程:

1. 构建请求

首先,浏览器构建请求行信息(如下所示),构建好后,浏览器准备发起网络请求。

GET /index.html HTTP1.1

2. 查找缓存

在真正发起网络请求之前,浏览器会先在浏览器缓存中查询是否有要请求的文件。其中,浏览器缓存是一种在本地保存资源副本,以供下次请求时直接使用的技术。

当浏览器发现请求的资源已经在浏览器缓存中存有副本,它会拦截请求,返回该资源的副本,并直接结束请求,而不会再去源服务器重新下载。

3. 准备 IP 地址和端口

因为浏览器使用 HTTP 协议作为应用层协议,用来封装请求的文本信息;并使用 TCP/IP 作传输层协议将它发到网络上,所以在 HTTP 工作开始之前,浏览器需要通过 TCP 与服务器建立连接。也就是说 HTTP 的内容是通过 TCP 的传输数据阶段来实现的。

第一步浏览器会请求 DNS 返回域名对应的 IP。当然浏览器还提供了 DNS 数据缓存服务,如果某个域名已经解析过了,那么浏览器会缓存解析的结果,以供下次查询时直接使用,这样也会减少一次网络请求。

拿到 IP 之后,接下来就需要获取端口号了。通常情况下,如果 URL 没有特别指明端口号,那么 HTTP 协议默认是 80 端口。

4. 等待 TCP 队列

现在已经把端口和 IP 地址都准备好了,那么下一步是不是可以建立 TCP 连接了呢?答案依然是“不行”。Chrome 有个机制,同一个域名同时最多只能建立 6 个 TCP 连接,如果在同一个域名下同时有 10 个请求发生,那么其中 4 个请求会进入排队等待状态,直至进行中的请求完成。

当然,如果当前请求数量少于 6,会直接进入下一步,建立 TCP 连接。

5. 建立 TCP 连接

排队等待结束之后,终于可以快乐地和服务器握手了,在 HTTP 工作开始之前,浏览器通过 TCP 与服务器建立连接。

6. 发送 HTTP 请求

一旦建立了 TCP 连接,浏览器就可以和服务器进行通信了。而 HTTP 中的数据正是在这个通信过程中传输的。

在浏览器发送请求行命令之后,还要以请求头形式发送其他一些信息,把浏览器的一些基础信息告诉服务器。比如包含了浏览器所使用的操作系统、浏览器内核等信息,以及当前请求的域名信息、浏览器端的 Cookie 信息,等等。

服务器端处理 HTTP 请求流程:

1. 返回请求

一旦服务器处理结束,便可以返回数据给浏览器了。你可以通过工具软件 curl 来查看返回请求数据。

随后,正如浏览器会随同请求发送请求头一样,服务器也会随同响应向浏览器发送响应头。响应头包含了服务器自身的一些信息,比如服务器生成返回数据的时间、返回的数据类型(JSON、HTML、流媒体等类型),以及服务器要在客户端保存的 Cookie 等信息。

发送完响应头后,服务器就可以继续发送响应体的数据,通常,响应体就包含了 HTML 的实际内容。

2. 断开连接

通常情况下,一旦服务器向客户端返回了请求数据,它就要关闭 TCP 连接。不过如果浏览器或者服务器在其头信息中加入了:

Connection:Keep-Alive 

那么 TCP 连接在发送后将仍然保持打开状态,这样浏览器就可以继续通过同一个 TCP 连接发送请求。保持 TCP 连接可以省去下次请求时需要建立连接的时间,提升资源加载速度。比如,一个 Web 页面中内嵌的图片就都来自同一个 Web 站点,如果初始化了一个持久连接,你就可以复用该连接,以请求其他资源,而不需要重新再建立新的 TCP 连接。

此文章为2月Day6学习笔记,内容来源于极客时间《浏览器工作原理与实践》,推荐该课程。

http://www.yayakq.cn/news/9612/

相关文章:

  • 重庆云阳网站建设价格网页制作官方网站
  • 天津西青网站建设公司建筑工程网手机版
  • 网站建设 网站美容店网站建设
  • 海南响应式网站建设方案中企动力企业邮箱怎么样
  • 济南网站排名外包网站安全建设方案报告
  • 深圳网站备案拍照有没有做任务的网站吗
  • 公司网站排名怎样才能把网站做好
  • 邯郸专业网站建设深圳装修公司大全
  • 目前比较流行的公司网站建站技术软文推广发稿
  • 问答类网站怎么做怎样弄一个自己的网站
  • 邓州做网站网站建设方案书含合同
  • 做汽配找哪个网站好泰安公司网站建设
  • 网站开发连接数据库服务器安装wordpress
  • 上海 企业 网站建设山西两学一做网站登录
  • android 旅游网站开发网站建设属于高新技术收入吗
  • html5建一个网站高端大气的网站
  • 石家庄定制建站做网站用的一些素材
  • 小米手机的网站架构怎么找个人搭建网站
  • 环保部网站官网建设项目审批代理加盟做什么好
  • 电子商务网站建设实训报告友链互换平台推荐
  • 怎样改网站英文域名yellow免费观看高清
  • 井研移动网站建设深圳品牌做网站
  • 河南省监理协会官方网站建设做付费网站
  • 宝安网站公司营销型网站设计特点
  • 做家纺的主要国际网站wordpress调用搜索功能
  • 网站开发需要懂哪些本地wordpress很慢
  • 网站运营工作计划.net给网站做短信验证
  • 手机制作表白网站滨海做网站的价格
  • 建设网站的企业淮安网站建设价格
  • 光谷软件园 网站建设网站优化外包公司