Giả lập một cache đứng giữa client và origin. Cho thông tin một mục đã lưu và request hiện tại, quyết định hành động:
no-store → luôn FORWARD (đi tới origin).age < max-age) và KHÔNG no-cache → HIT (trả cache).no-cache → cần revalidate:
REVALIDATE (gửi conditional GET).FORWARD.Kiểm tra theo đúng thứ tự trên.
Dòng 1: value Cache-Control của mục cache. Dòng 2: age. Dòng 3: ETag của mục cache (- nếu không có). In một trong: FORWARD, HIT, REVALIDATE.
Input:
max-age=100
50
"v1"
Không no-store; age 50 < 100 và không no-cache → HIT.
Dòng 1: Cache-Control. Dòng 2: age. Dòng 3: ETag hoặc '-'.
max-age mặc định 0 nếu không có. no-store/no-cache là cờ.
Một dòng: FORWARD / HIT / REVALIDATE.
Ví dụ:
Đầu vào:
max-age=100
50
"v1"
Đầu ra:
HIT
Giải thích:
Đang tải editor...