What is HTTP Response Status Code 411 Length Required?
HTTP response status code 411 Length Required indicates that the server refuses to accept the request without a defined Content-Length
header. The client must include this header to specify the size of the request body.
This status code is typically encountered when clients send POST or PUT requests that contain a body but fail to include the Content-Length
header, which indicates the size of the body.
The 411 status helps servers to know in advance the amount of data they need to read, preventing issues such as incomplete or improperly formed requests that could disrupt server operations.
The client can resolve this error by calculating the size of the payload and including the Content-Length
header with the appropriate value in the request.
Example 1: Missing Content-Length Header
# Client sends a POST request without a Content-Length header. POST /upload HTTP/1.1 Host: www.example.com Content-Type: application/json { "data": "Sample payload" } # Server Response HTTP/1.1 411 Length Required Date: Wed, 09 Oct 2024 15:10:00 GMT Server: Apache/2.4.41 (Ubuntu) { "error": "Content-Length header is required." }
Example 2: PUT Request Without Content-Length
# Client sends a PUT request with a body but no Content-Length. PUT /data/12345 HTTP/1.1 Host: api.example.com Content-Type: application/json { "name": "Updated Data" } # Server Response HTTP/1.1 411 Length Required Date: Wed, 09 Oct 2024 15:12:00 GMT Server: Nginx/1.18.0 { "error": "Content-Length must be specified." }
Summary
The HTTP 411 Length Required status code is used when a request body is provided without specifying its size using the Content-Length
header. It ensures that the server knows the size of the incoming request body, helping to process data accurately.
Clients should include the Content-Length
header in requests that include a body to avoid this error, ensuring compatibility with server requirements.