HTTP 203 Non-Authoritative Information vs 428 Precondition Required
HTTP 203 (Non-Authoritative Information) is a 2xx Success response, while 428 (Precondition Required) is a 4xx Client Error response. 203 indicates that the response payload has been modified by a transforming proxy from the origin server's 200 response. In contrast, 428 means that the server requires the request to be conditional (e.g., include If-Match header) to prevent lost updates.
คำอธิบาย
The response payload has been modified by a transforming proxy from the origin server's 200 response.
เมื่อคุณพบเห็น
When a proxy or CDN modifies the response body (e.g., adds headers, transforms content).
วิธีแก้ไข
Check if a proxy is modifying the response. Access the origin directly if you need the original content.
คำอธิบาย
The server requires the request to be conditional (e.g., include If-Match header) to prevent lost updates.
เมื่อคุณพบเห็น
When an API requires optimistic concurrency control via ETags.
วิธีแก้ไข
Fetch the resource first to get its ETag, then include If-Match in your update request.
ความแตกต่างหลัก
203 is a 2xx Success response, while 428 is a 4xx Client Error response.
HTTP 203: The response payload has been modified by a transforming proxy from the origin server's 200 response.
HTTP 428: The server requires the request to be conditional (e.g., include If-Match header) to prevent lost updates.
You encounter 203 when when a proxy or CDN modifies the response body (e.g., adds headers, transforms content).
You encounter 428 when when an API requires optimistic concurrency control via ETags.
ควรใช้อันไหนเมื่อไร
For 203 (Non-Authoritative Information): Check if a proxy is modifying the response. Access the origin directly if you need the original content. For 428 (Precondition Required): Fetch the resource first to get its ETag, then include If-Match in your update request.