Máy chủ web không gửi "toàn bộ trang web", nhưng tài liệu mà trình duyệt yêu cầu.
Ví dụ: khi bạn truy cập https://www.google.com/ máy chủ truy vấn trình duyệt cho tài liệu https://www.google.com/
. Máy chủ xử lý yêu cầu và gửi lại một số mã HTML.
Sau đó trình duyệt kiểm tra những gì máy chủ đã gửi. Trong trường hợp này là trang web HTML, do đó, nó phân tích tài liệu và tìm kiếm các tập lệnh, biểu định kiểu, hình ảnh, phông chữ được tham chiếu, v.v.
Ở giai đoạn này, trình duyệt đã hoàn tất tải xuống tài liệu đó, nhưng vẫn không tải xuống các tài liệu tham chiếu. Nó có thể chọn làm như vậy hoặc bỏ qua chúng. Các trình duyệt thông thường sẽ cố gắng tải xuống tất cả các tài liệu được tham chiếu để có trải nghiệm xem tốt nhất. Nếu bạn có trình chặn quảng cáo (như Adblock) hoặc plugin riêng tư (Ghostery, NoScript), nó cũng có thể chặn một số tài nguyên.
Sau đó, trình duyệt tải xuống từng tài liệu tham chiếu, mỗi lần yêu cầu máy chủ rõ ràng cho một tài nguyên. Trong ví dụ Google của chúng tôi, trình duyệt sẽ tìm thấy các tài liệu tham khảo sau, chỉ để đặt tên cho một vài trong số chúng:
(các tệp thực tế có thể khác nhau đối với người dùng, trình duyệt và phiên khác nhau và có thể thay đổi theo thời gian)
Các trình duyệt dựa trên văn bản không tải xuống hình ảnh, tệp Flash, video HTML5, v.v. để chúng tải xuống ít dữ liệu hơn.
@NathanOsman đưa ra một quan điểm tốt trong các nhận xét: Đôi khi các hình ảnh nhỏ được nhúng trực tiếp vào các tài liệu HTML và trong các trường hợp đó, không thể tránh được việc tải xuống chúng. Đây là một mẹo khác được sử dụng để giảm số lượng yêu cầu. Tuy nhiên, chúng rất nhỏ, nếu không, chi phí mã hóa tệp nhị phân trong base64 là quá lớn. Có vài hình ảnh như vậy trên Google.com: ( base64 kích thước mã hóa / kích thước được giải mã )
- Biểu tượng bàn phím 19 × 11 (106 B / 76 B)
- Biểu tượng micrô 28 × 38 (334 B / 248 B)
- GIF trong suốt 1 × 1 px (62 B / 43 B) hiển thị trong Chrome Dev Tools tab Tài nguyên , nhưng tôi không thể tìm thấy nó trong nguồn - có thể được thêm sau bằng JavaScript
- Tệp GIF bị hỏng 1 × 1 px xuất hiện hai lần (34 B / 23 B). Mục đích của nó là một bí ẩn đối với tôi.