0

在 HTTP 1.0 中,我知道只要浏览器发送一个新的 GET 请求,就会建立一个新的套接字连接。我想知道浏览器是否为网站中的每个单独文件发送 GET 请求。例如,假设我们有一个包含 3 个图像文件和 index.html 文件的静态网站。当我们连接到服务器时,浏览器是发送 4 个单独的请求(也就是 4 个不同的连接),还是只连接到网站一次并检索所有内容(也就是只有 1 个连接就足够了)?

4

2 回答 2

1

如果您在浏览器中打开开发者控制台并查看网络(在 Chrome 中),它会向您显示所有发出的请求。它将对每个资源发出单独的请求。此外,如果图像被使用 20 次,它将被请求一次并显示 20 次。尽管所有这些请求都是单独发出的,但它们仍然可能是通过与请求相同的连接完成的,并且连接不是同一件事。希望这能给你一些方向。这两个链接可能会为您提供有关服务器连接的更多信息。

https://en.wikipedia.org/wiki/HTTP_persistent_connection https://en.wikipedia.org/wiki/HTTP_pipelining

于 2015-11-17T08:14:45.040 回答
1

正如这个答案中所解释的(关于 HTTP 1.0 与 1.1),在 v1.0 中,每个请求都在一个单独的连接中发送,所以这将是 4,但是,由于缓存机制(在 v1.0可用),浏览器可能根本不会发送任何请求,因此不会打开任何连接。

于 2015-11-17T08:16:27.170 回答