Yêu cầu và phản hồi HTTP

Trình duyệt web tương tác với trang web bằng cách tuân theo giao thức HTTP. Đây là bộ quy tắc chuẩn hoá để giao tiếp:

  • Khi bạn truy cập một trang web, trình duyệt sẽ gửi yêu cầu HTTP cho các tài nguyên trên trang, chẳng hạn như HTML, CSS, JavaScript và hình ảnh.
  • Khi một máy chủ HTTP (máy chủ web lưu trữ một trang web) nhận được một yêu cầu HTTP hợp lệ từ trình duyệt, máy chủ sẽ phản hồi trình duyệt bằng một phản hồi HTTP.
  • Yêu cầu và phản hồi có thể bao gồm thông tin bổ sung được gọi là tiêu đề HTTP.

Ví dụ: hãy xem xét trang web cats.example.

Trang web cats.example huyền thoại.

Yêu cầu

Việc truy cập vào trang cats.example sẽ bắt đầu một chuỗi yêu cầu đến nhiều miền. Trong đó có yêu cầu về hình ảnh được lưu trữ trên chính cats.example, yêu cầu về tập lệnh phân tích từ analytics.example và các yêu cầu khác về tài nguyên bổ sung từ các miền khác.

Bạn có thể bổ sung tiêu đề yêu cầu HTTP vào yêu cầu HTTP để cung cấp thông tin bổ sung từ trình duyệt đến máy chủ web. Ví dụ: các tiêu đề như sau thường được đưa vào:

  • Accept-Language: en-US
    Tiêu đề này cho biết ngôn ngữ ưu tiên của người dùng, trong trường hợp này là tiếng Anh (Hoa Kỳ).
  • User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
    Tiêu đề này cung cấp thông tin chi tiết về trình duyệt và hệ điều hành của người dùng, trong trường hợp này là "Mozilla/5.0" (gia đình trình duyệt), "Macintosh" (hệ điều hành) và "Chrome/127.0.0.0" (phiên bản trình duyệt).

Phản hồi

Khi nhận được yêu cầu hợp lệ từ trình duyệt, máy chủ sẽ gửi cho trình duyệt một phản hồi cung cấp tài nguyên đã được yêu cầu ("trọng tải"): HTML, CSS, JavaScript, tệp hình ảnh, video hoặc dữ liệu khác. Cũng giống như mỗi yêu cầu từ trình duyệt có thể bao gồm tiêu đề yêu cầu, mỗi phản hồi từ máy chủ có thể bao gồm tiêu đề phản hồi. Các tiêu đề phản hồi này được gửi cùng với tải trọng.

Tiêu đề Set-Cookie đi kèm với phản hồi sẽ yêu cầu trình duyệt lưu trữ một số văn bản: tên và giá trị. Đây được gọi là cookie HTTP. Để phản hồi yêu cầu về cats.example/images/cat.jpg, máy chủ cats.example sẽ bao gồm tiêu đề Set-Cookie:cat=tabby. Thao tác này sẽ hướng dẫn trình duyệt lưu trữ một cookie có tên là cat với giá trị tabby.

Sau đó, cookie đó sẽ được đưa vào các yêu cầu tiếp theo đến cats.example, cho đến khi cookie hết hạn hoặc bị xoá. Điều này cho phép máy chủ duy trì thông tin về người dùng trên nhiều trang web hoặc phiên: ví dụ: người dùng đã thấy hình ảnh một con mèo tam thể.


Tiêu đề Hành động Ví dụ Hiệu ứng
Phản hồi HTTP
Máy chủ đến trình duyệt
Set‑Cookie Máy chủ web yêu cầu trình duyệt của bạn lưu trữ một cookie. Set‑Cookie:cat=tabby Cookie được lưu trữ trong trình duyệt của bạn và được cung cấp trong các yêu cầu tiếp theo cho máy chủ đã đặt cookie đó.
Yêu cầu HTTP
Trình duyệt đến máy chủ
Cookie Trình duyệt của bạn cung cấp một cookie. Cookie:cat=tabby Cookie được cung cấp cho máy chủ là đích đến của yêu cầu.

Bản thu thử

Công cụ

Tìm hiểu thêm