HTTP

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.

ความแตกต่างหลัก

1.

203 is a 2xx Success response, while 428 is a 4xx Client Error response.

2.

HTTP 203: The response payload has been modified by a transforming proxy from the origin server's 200 response.

3.

HTTP 428: The server requires the request to be conditional (e.g., include If-Match header) to prevent lost updates.

4.

You encounter 203 when when a proxy or CDN modifies the response body (e.g., adds headers, transforms content).

5.

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.

เรียนรู้เพิ่มเติม