An HTTP response contains a result code, header fields, and a body.
The HTTP protocol expects the result code and all header fields to be returned before any body content.
Some commonly used status codes include:
indicates that the requested resource is not available.
indicates that the request requires HTTP authentication.
indicates an error inside the HTTP server which prevented it from fulfilling the request.
indicates that the HTTP server is temporarily overloaded, and unable to handle the request.