Tôi hiện đang cố gắng hiểu chính xác 304/Không được sửa đổi đủ điều kiện cho loại mã trạng thái HTTP 3xx. RFC 1945, sec. 9.3 và RFC 2616, sec. 10.3 cả hai đều đọc:Tại sao mã trạng thái 304 được tính là "chuyển hướng?"
Loại trạng thái này chỉ ra rằng hành động cần được thực hiện bởi tác nhân người dùng để thực hiện yêu cầu.
Trong khi "tải từ bộ nhớ cache cục bộ của khách hàng" rõ ràng là "hành động tiếp theo", tôi đang đấu tranh để xem đây là chuyển hướng theo nghĩa HTTP. Tôi có đọc nó theo nghĩa đen không?
Cảm ơn bạn đã liên kết. Thật thú vị khi thấy rằng 304 được liệt kê trong một phần hoàn toàn khác. Vậy ngữ nghĩa thực sự là "chuyển hướng tới bản sao được lưu trong bộ nhớ cache cục bộ?" Nếu không, tôi thực sự không biết tại sao "Không được sửa đổi" không thể là mã 2xx như 201/Created (cũng có thể chuyển hướng) hoặc 204/Không có nội dung. Xét cho cùng, yêu cầu * đã * thành công. – DaSourcerer
Có, tiêu đề "If-Modified-Since" thông báo rõ ràng cho máy chủ "Tôi biết tài nguyên này tồn tại và tôi biết cách thể hiện nó, đã sửa đổi từ lần cuối tôi biết không?" - Máy chủ sẽ trả lời bằng "304 Không được sửa đổi" hoặc mã thích hợp hơn, chẳng hạn như "200 Ok" (phiên bản mới của nội dung) hoặc "404 Không tìm thấy" hoặc bất kỳ điều gì khác phù hợp cho thời điểm này. – AnrDaemon