mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-14 12:20:24 +00:00
Document the HTTP status codes Cowboy may send in the manual
422 is left out as it's soon to be replaced by 400.
This commit is contained in:
parent
24213c3b6a
commit
73f65d5a75
2 changed files with 181 additions and 0 deletions
180
manual/http_status_codes.md
Normal file
180
manual/http_status_codes.md
Normal file
|
@ -0,0 +1,180 @@
|
||||||
|
HTTP status codes
|
||||||
|
=================
|
||||||
|
|
||||||
|
This chapter aims to list all HTTP status codes that Cowboy
|
||||||
|
may return, with details on the reasons why. The list given
|
||||||
|
here only includes the replies that Cowboy sends, not user
|
||||||
|
replies.
|
||||||
|
|
||||||
|
100 Continue
|
||||||
|
------------
|
||||||
|
|
||||||
|
When the client sends an `expect: 100-continue` header,
|
||||||
|
Cowboy automatically sends a this status code before
|
||||||
|
trying to read the request body. This behavior can be
|
||||||
|
disabled using the appropriate body option.
|
||||||
|
|
||||||
|
101 Switching Protocols
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
This is the status code sent when switching to the
|
||||||
|
Websocket protocol.
|
||||||
|
|
||||||
|
200 OK
|
||||||
|
------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
201 Created
|
||||||
|
-----------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
202 Accepted
|
||||||
|
------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
204 No Content
|
||||||
|
--------------
|
||||||
|
|
||||||
|
This status code is sent when the processing of a request
|
||||||
|
ends without any reply having been sent. It may also be
|
||||||
|
sent by `cowboy_rest` under normal conditions.
|
||||||
|
|
||||||
|
300 Multiple Choices
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
301 Moved Permanently
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
303 See Other
|
||||||
|
-------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
304 Not Modified
|
||||||
|
----------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
307 Temporary Redirect
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
400 Bad Request
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Cowboy will send this status code for any of the
|
||||||
|
following reasons:
|
||||||
|
|
||||||
|
* Too many empty lines were sent before the request.
|
||||||
|
* The request-line could not be parsed.
|
||||||
|
* Too many headers were sent.
|
||||||
|
* A header name was too long.
|
||||||
|
* A header value was too long.
|
||||||
|
* The host header was missing from an HTTP/1.1 request.
|
||||||
|
* The host header could not be parsed.
|
||||||
|
* The requested host was not found.
|
||||||
|
* The requested path could not be parsed.
|
||||||
|
* The accept header could not be parsed when using REST.
|
||||||
|
* REST under normal conditions.
|
||||||
|
* A Websocket upgrade failed.
|
||||||
|
|
||||||
|
401 Unauthorized
|
||||||
|
----------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
403 Forbidden
|
||||||
|
-------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
404 Not Found
|
||||||
|
-------------
|
||||||
|
|
||||||
|
This status code is sent when the router successfully
|
||||||
|
resolved the host but didn't find a matching path for
|
||||||
|
the request. It may also be sent by `cowboy_rest` under
|
||||||
|
normal conditions.
|
||||||
|
|
||||||
|
405 Method Not Allowed
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
406 Not Acceptable
|
||||||
|
------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
408 Request Timeout
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Cowboy will send this status code to the client if the
|
||||||
|
client started to send a request, indicated by the
|
||||||
|
request-line being received fully, but failed to send
|
||||||
|
all headers in a reasonable time.
|
||||||
|
|
||||||
|
409 Conflict
|
||||||
|
------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
410 Gone
|
||||||
|
--------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
412 Precondition Failed
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
413 Request Entity Too Large
|
||||||
|
----------------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
414 Request-URI Too Long
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
Cowboy will send this status code to the client if the
|
||||||
|
request-line is too long. It may also be sent by
|
||||||
|
`cowboy_rest` under normal conditions.
|
||||||
|
|
||||||
|
415 Unsupported Media Type
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
500 Internal Server Error
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
This status code is sent when a crash occurs in HTTP, loop
|
||||||
|
or REST handlers, or when an invalid return value is
|
||||||
|
returned. It may also be sent by `cowboy_rest` under
|
||||||
|
normal conditions.
|
||||||
|
|
||||||
|
501 Not Implemented
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
503 Service Unavailable
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
This status code is sent by `cowboy_rest`.
|
||||||
|
|
||||||
|
505 HTTP Version Not Supported
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
Cowboy only supports the versions 1.0 and 1.1 of HTTP.
|
||||||
|
In all other cases this status code is sent back to the
|
||||||
|
client and the connection is closed.
|
|
@ -18,3 +18,4 @@ The function reference documents the public interface of Cowboy.
|
||||||
* [cowboy_sub_protocol](cowboy_sub_protocol.md)
|
* [cowboy_sub_protocol](cowboy_sub_protocol.md)
|
||||||
* [cowboy_websocket](cowboy_websocket.md)
|
* [cowboy_websocket](cowboy_websocket.md)
|
||||||
* [cowboy_websocket_handler](cowboy_websocket_handler.md)
|
* [cowboy_websocket_handler](cowboy_websocket_handler.md)
|
||||||
|
* [HTTP status codes](http_status_codes.md)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue