Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Lập trình Web & Backend] Caching: 304 Not Modified theo ETag

    Caching: 304 Not Modified

    Để tiết kiệm băng thông, client gửi kèm header If-None-Match chứa ETag của bản đã cache. Server so sánh với ETag hiện tại của tài nguyên:

    • Nếu trùng → tài nguyên không đổi → trả 304 Not Modified (không gửi lại body).
    • Nếu khác (hoặc client không có cache, gửi none) → trả 200 (kèm body mới).

    Cho ETag hiện tại của server và giá trị If-None-Match của client, in mã trạng thái.

    Ví dụ

    Server ETag "v3", client If-None-Match: "v3" → 304.

    • Định dạng đầu vào:

      Dòng 1: ETag hiện tại của server. Dòng 2: giá trị If-None-Match của client (none nếu không có).

    • Ràng buộc đầu vào:

      ETag là chuỗi dài ≤ 40 ký tự.

    • Định dạng đầu ra:

      304 nếu trùng ETag, ngược lại 200.

    Ví dụ:

    Đầu vào:

    "v3"
    "v3"
    

    Đầu ra:

    304

    Giải thích:

    ETag client trùng server nên tài nguyên không đổi -> 304.

    Đang tải editor...