From bc29ec9c5ce92b330767b4a44ead64f045332518 Mon Sep 17 00:00:00 2001 From: Samuel Ryan Date: Mon, 9 Nov 2015 01:44:05 +0000 Subject: [PATCH] Improves 4xx class status codes with referencing --- contents/codes/400.md | 11 ++++++----- contents/codes/401.md | 19 +++++++++++-------- contents/codes/402.md | 6 ++++-- contents/codes/403.md | 13 ++++++++----- contents/codes/404.md | 16 +++++++++------- contents/codes/405.md | 13 ++++++++----- contents/codes/406.md | 15 +++++++++------ contents/codes/407.md | 15 ++++++++++----- contents/codes/408.md | 11 +++++++---- contents/codes/409.md | 11 ++++++----- contents/codes/410.md | 16 +++++++++------- contents/codes/411.md | 10 ++++++---- contents/codes/412.md | 8 +++++--- contents/codes/413.md | 13 +++++++------ contents/codes/414.md | 17 +++++++++++------ contents/codes/415.md | 9 +++++---- contents/codes/416.md | 23 +++++++++++++---------- contents/codes/417.md | 10 ++++++---- contents/codes/418.md | 4 +++- contents/codes/421.md | 24 ++++++++++++++---------- contents/codes/422.md | 13 +++++++------ contents/codes/423.md | 7 ++++--- contents/codes/424.md | 9 +++++---- contents/codes/426.md | 12 +++++++----- contents/codes/428.md | 7 +++++-- contents/codes/429.md | 7 ++++--- contents/codes/431.md | 10 ++++++---- contents/codes/499.md | 9 +++++---- 28 files changed, 200 insertions(+), 138 deletions(-) diff --git a/contents/codes/400.md b/contents/codes/400.md index 1dbfcb0..2db71a0 100644 --- a/contents/codes/400.md +++ b/contents/codes/400.md @@ -6,11 +6,12 @@ references: "Rails HTTP Status Symbol": "bad_request" --- -The 400 Bad Request status code indicates that the server cannot or will not -process the request due to something that is perceived to be a client error -(e.g., malformed request syntax, invalid request message framing, or deceptive -request routing). +The server cannot or will not process the request due to something that is +perceived to be a client error (e.g., malformed request syntax, invalid request +message framing, or deceptive request routing). -Source: [RFC7231 Section 6.5.1][1] +--- + +* Source: [RFC7231 Section 6.5.1][1] [1]: \ No newline at end of file diff --git a/contents/codes/401.md b/contents/codes/401.md index 578dc01..cc6eedd 100644 --- a/contents/codes/401.md +++ b/contents/codes/401.md @@ -6,23 +6,26 @@ references: "Rails HTTP Status Symbol": ":unauthorized" --- -The 401 Unauthorized status code indicates that the request has not been -applied because it lacks valid authentication credentials for the target -resource. +The request has not been applied because it lacks valid authentication +credentials for the target resource. -The server generating a 401 response MUST send a WWW-Authenticate header field -([RFC7235 Section 4.1][2]) containing at least one challenge applicable to the +The server generating a 401 response MUST send a WWW-Authenticate header +field[1](#ref-1) containing at least one challenge applicable to the target resource. If the request included authentication credentials, then the 401 response indicates that authorization has been refused for those credentials. The user -agent MAY repeat the request with a new or replaced Authorization header field -([RFC7235 Section 4.2][3]). If the 401 response contains the same challenge as +agent MAY repeat the request with a new or replaced Authorization header +field[2](#ref-2). If the 401 response contains the same challenge as the prior response, and the user agent has already attempted authentication at least once, then the user agent SHOULD present the enclosed representation to the user, since it usually contains relevant diagnostic information. -Source: [RFC7235 Section 3.1][1] +--- + +* 1 WWW-Authenticate [RFC7235 Section 4.1][2] +* 2 Authorization [RFC7235 Section 4.2][3] +* Source: [RFC7235 Section 3.1][1] [1]: [2]: diff --git a/contents/codes/402.md b/contents/codes/402.md index 1817720..cda5c17 100644 --- a/contents/codes/402.md +++ b/contents/codes/402.md @@ -6,8 +6,10 @@ references: "Rails HTTP Status Symbol": ":payment_required" --- -The 402 (Payment Required) status code is reserved for future use. +Reserved for future use. -Source: [RFC7231 Section 6.5.2][1] +--- + +* Source: [RFC7231 Section 6.5.2][1] [1]: \ No newline at end of file diff --git a/contents/codes/403.md b/contents/codes/403.md index ce46e4b..b805cc8 100644 --- a/contents/codes/403.md +++ b/contents/codes/403.md @@ -6,9 +6,10 @@ references: "Rails HTTP Status Symbol": ":forbidden" --- -The 403 Forbidden status code indicates that the server understood the request -but refuses to authorize it. A server that wishes to make public why the request -has been forbidden can describe that reason in the response payload (if any). +The server understood the request but refuses to authorize it. + +A server that wishes to make public why the request has been forbidden can +describe that reason in the response payload (if any). If authentication credentials were provided in the request, the server considers them insufficient to grant access. The client SHOULD NOT automatically repeat @@ -18,8 +19,10 @@ unrelated to the credentials. An origin server that wishes to "hide" the current existence of a forbidden target resource MAY instead respond with a status code of -[404 (Not Found)](/404). +[404 Not Found](/404). -Source: [RFC7231 Section 6.5.3][1] +--- + +* Source: [RFC7231 Section 6.5.3][1] [1]: \ No newline at end of file diff --git a/contents/codes/404.md b/contents/codes/404.md index 8fd190d..48d2551 100644 --- a/contents/codes/404.md +++ b/contents/codes/404.md @@ -6,20 +6,22 @@ references: "Rails HTTP Status Symbol": ":not_found" --- -The 404 Not Found status code indicates that the origin server did not find a -current representation for the target resource or is not willing to disclose -that one exists. +The origin server did not find a current representation for the target resource +or is not willing to disclose that one exists. A 404 status code does not indicate whether this lack of representation is -temporary or permanent; the [410 (Gone)](/410) status code is preferred over 404 +temporary or permanent; the [410 Gone](/410) status code is preferred over 404 if the origin server knows, presumably through some configurable means, that the condition is likely to be permanent. A 404 response is cacheable by default; i.e., unless otherwise indicated by the -method definition or explicit cache controls -(see [Section 4.2.2 of RFC7234][2]). +method definition or explicit cache controls[1](#ref-1). -Source: [RFC7231 6.5.4][1] +--- + +* 1 Calculating Heuristic Freshness +[RFC7234 Section 4.2.2][2] +* Source: [RFC7231 6.5.4][1] [1]: [2]: \ No newline at end of file diff --git a/contents/codes/405.md b/contents/codes/405.md index a150143..22bc3f6 100644 --- a/contents/codes/405.md +++ b/contents/codes/405.md @@ -6,17 +6,20 @@ references: "Rails HTTP Status Symbol": ":method_not_allowed" --- -The 405 Method Not Allowed status code indicates that the method received in -the request-line is known by the origin server but not supported by the target -resource. +The method received in the request-line is known by the origin server but not +supported by the target resource. The origin server MUST generate an Allow header field in a 405 response containing a list of the target resource's currently supported methods. A 405 response is cacheable by default; i.e., unless otherwise indicated by the -method definition or explicit cache controls (see [Section 4.2.2 of RFC7234][2]). +method definition or explicit cache controls[1](#ref-1). -Source: [RFC7231 Section 6.5.5][1] +--- + +* 1 Calculating Heuristic Freshness +[RFC7234 Section 4.2.2][2] +* Source: [RFC7231 Section 6.5.5][1] [1]: [2]: \ No newline at end of file diff --git a/contents/codes/406.md b/contents/codes/406.md index 70d2d9d..26b6830 100644 --- a/contents/codes/406.md +++ b/contents/codes/406.md @@ -6,11 +6,10 @@ references: "Rails HTTP Status Symbol": ":not_acceptable" --- -The 406 Not Acceptable status code indicates that the target resource does not -have a current representation that would be acceptable to the user agent, -according to the proactive negotiation header fields received in the request -([RFC7231 Section 5.3][2]), and the server is unwilling to supply a default -representation. +The target resource does not have a current representation that would be +acceptable to the user agent, according to the proactive negotiation header +fields received in the request[1](#ref-1), and the server is +unwilling to supply a default representation. The server SHOULD generate a payload containing a list of available representation characteristics and corresponding resource identifiers from which @@ -19,7 +18,11 @@ automatically select the most appropriate choice from that list. However, this specification does not define any standard for such automatic selection, as described in [RFC7231 Section 6.4.1][3]. -Source: [RFC7231 Section 6.5.6][1] +--- + +* 1 Content Negotiation +[RFC7231 Section 5.3][2] +* Source: [RFC7231 Section 6.5.6][1] [1]: [2]: diff --git a/contents/codes/407.md b/contents/codes/407.md index 9845a98..a18ba29 100644 --- a/contents/codes/407.md +++ b/contents/codes/407.md @@ -6,16 +6,21 @@ references: "Rails HTTP Status Symbol": ":proxy_authentication_required" --- -The 407 Proxy Authentication Required status code is similar to -[401 (Unauthorized)](/401), but it indicates that the client needs to +Similar to [401 Unauthorized](/401), but it indicates that the client needs to authenticate itself in order to use a proxy. -The proxy MUST send a Proxy-Authenticate header field ([Section 4.3][2]) +The proxy MUST send a Proxy-Authenticate header field[1](#ref-1) containing a challenge applicable to that proxy for the target resource. The client MAY repeat the request with a new or replaced Proxy-Authorization -header field ([Section 4.4][3]). +header field[2](#ref-2). -Source: [RFC7235 Section 3.2][1] +--- + +* 1 Proxy-Authenticate +[RFC7235 Section 4.3][2] +* 2 Proxy-Authorization +[RFC7235 Section 4.4][3] +* Source: [RFC7235 Section 3.2][1] [1]: [2]: diff --git a/contents/codes/408.md b/contents/codes/408.md index 835d542..8782c6a 100644 --- a/contents/codes/408.md +++ b/contents/codes/408.md @@ -6,15 +6,18 @@ references: "Rails HTTP Status Symbol": ":request_timeout" --- -The 408 Request Timeout status code indicates that the server did not receive -a complete request message within the time that it was prepared to wait. +The server did not receive a complete request message within the time that it +was prepared to wait. -A server SHOULD send the "close" connection option ([Section 6.1 of RFC7230][2]) +A server SHOULD send the "close" connection option[1](#ref-1) in the response, since 408 implies that the server has decided to close the connection rather than continue waiting. If the client has an outstanding request in transit, the client MAY repeat that request on a new connection. -Source: [RFC7231 Section 6.5.7][1] +--- + +* 1 Connection [RFC7230 Section 6.1][2] +* Source: [RFC7231 Section 6.5.7][1] [1]: [2]: \ No newline at end of file diff --git a/contents/codes/409.md b/contents/codes/409.md index 48a4d56..02f41bf 100644 --- a/contents/codes/409.md +++ b/contents/codes/409.md @@ -6,10 +6,9 @@ references: "Rails HTTP Status Symbol": ":conflict" --- -The 409 Conflict status code indicates that the request could not be completed -due to a conflict with the current state of the target resource. This code is -used in situations where the user might be able to resolve the conflict and -resubmit the request. +The request could not be completed due to a conflict with the current state of +the target resource. This code is used in situations where the user might be +able to resolve the conflict and resubmit the request. The server SHOULD generate a payload that includes enough information for a user to recognize the source of the conflict. @@ -21,6 +20,8 @@ the origin server might use a 409 response to indicate that it can't complete the request. In this case, the response representation would likely contain information useful for merging the differences based on the revision history. -Source: [RFC7231 Section 6.5.8][1] +--- + +* Source: [RFC7231 Section 6.5.8][1] [1]: \ No newline at end of file diff --git a/contents/codes/410.md b/contents/codes/410.md index 587579b..4241e2f 100644 --- a/contents/codes/410.md +++ b/contents/codes/410.md @@ -6,12 +6,11 @@ references: "Rails HTTP Status Symbol": ":gone" --- -The 410 Gone status code indicates that access to the target resource is no -longer available at the origin server and that this condition is likely to be -permanent. +The target resource is no longer available at the origin server and that this +condition is likely to be permanent. If the origin server does not know, or has no facility to determine, whether or -not the condition is permanent, the status code [404 (Not Found)](/404) ought to +not the condition is permanent, the status code [404 Not Found](/404) ought to be used instead. The 410 response is primarily intended to assist the task of web maintenance by @@ -24,10 +23,13 @@ keep the mark for any length of time -- that is left to the discretion of the server owner. A 410 response is cacheable by default; i.e., unless otherwise indicated by the -method definition or explicit cache controls -(see [Section 4.2.2 of RFC7234][2]). +method definition or explicit cache controls[1](#ref-1). -Source: [RFC7231 Section 6.5.9][1] +--- + +* 1 Calculating Heuristic Freshness +[RFC7234 Section 4.2.2][2] +* Source: [RFC7231 Section 6.5.9][1] [1]: [2]: \ No newline at end of file diff --git a/contents/codes/411.md b/contents/codes/411.md index 887e288..ca01c14 100644 --- a/contents/codes/411.md +++ b/contents/codes/411.md @@ -6,14 +6,16 @@ references: "Rails HTTP Status Symbol": ":length_required" --- -The 411 Length Required status code indicates that the server refuses to -accept the request without a defined Content-Length -([Section 3.3.2 of RFC7230][2]). +The server refuses to accept the request without a defined +Content-Length[1](#ref-1). The client MAY repeat the request if it adds a valid Content-Length header field containing the length of the message body in the request message. -Source: [RFC7231 Section 6.5.10][1] +--- + +* 1 Content-Length [RFC7230 Section 3.3.2][2] +* Source: [RFC7231 Section 6.5.10][1] [1]: [2]: \ No newline at end of file diff --git a/contents/codes/412.md b/contents/codes/412.md index 40389b3..c344e8a 100644 --- a/contents/codes/412.md +++ b/contents/codes/412.md @@ -6,14 +6,16 @@ references: "Rails HTTP Status Symbol": ":precondition_failed" --- -The 412 Precondition Failed status code indicates that one or more conditions -given in the request header fields evaluated to false when tested on the server. +One or more conditions given in the request header fields evaluated to false +when tested on the server. This response code allows the client to place preconditions on the current resource state (its current representations and metadata) and, thus, prevent the request method from being applied if the target resource is in an unexpected state. -Source: [RFC7232 Section 4.2][1] +--- + +* Source: [RFC7232 Section 4.2][1] [1]: \ No newline at end of file diff --git a/contents/codes/413.md b/contents/codes/413.md index ff50d84..c2319a0 100644 --- a/contents/codes/413.md +++ b/contents/codes/413.md @@ -6,17 +6,18 @@ references: "Rails HTTP Status Symbol": ":request_entity_too_large" --- -The 413 Payload Too Large status code indicates that the server is refusing -to process a request because the request payload is larger than the server is -willing or able to process. +The server is refusing to process a request because the request payload is +larger than the server is willing or able to process. -The server MAY close the connection to prevent the -client from continuing the request. +The server MAY close the connection to prevent the client from continuing the +request. If the condition is temporary, the server SHOULD generate a Retry-After header field to indicate that it is temporary and after what time the client MAY try again. -Source: [RFC7231 Section 6.5.11][1] +--- + +* Source: [RFC7231 Section 6.5.11][1] [1]: \ No newline at end of file diff --git a/contents/codes/414.md b/contents/codes/414.md index a0cd617..5fef541 100644 --- a/contents/codes/414.md +++ b/contents/codes/414.md @@ -6,9 +6,9 @@ references: "Rails HTTP Status Symbol": ":request_uri_too_long" --- -The 414 URI Too Long status code indicates that the server is refusing to -service the request because the request-target ([Section 5.3 of RFC7230][2]) is -longer than the server is willing to interpret. +The server is refusing to service the request because the +request-target[1](#ref-1) is longer than the server is willing to +interpret. This rare condition is only likely to occur when a client has improperly converted a POST request to a GET request with long query information, when the @@ -17,10 +17,15 @@ prefix that points to a suffix of itself) or when the server is under attack by a client attempting to exploit potential security holes. A 414 response is cacheable by default; i.e., unless otherwise indicated by the -method definition or explicit cache controls -(see [Section 4.2.2 of RFC7234][3]). +method definition or explicit cache controls [2](#ref-2). -Source: [RFC7231 Section 6.5.12][1] +--- + +* 1 Content Negotiation +[RFC7230 Section 5.3][2] +* 2 Calculating Heuristic Freshness +RFC7234 Section 4.2.2][3] +* Source: [RFC7231 Section 6.5.12][1] [1]: [2]: diff --git a/contents/codes/415.md b/contents/codes/415.md index eefdb00..30a080b 100644 --- a/contents/codes/415.md +++ b/contents/codes/415.md @@ -6,13 +6,14 @@ references: "Rails HTTP Status Symbol": ":unsupported_media_type" --- -The 415 Unsupported Media Type status code indicates that the origin server is -refusing to service the request because the payload is in a format not supported -by this method on the target resource. +The origin server is refusing to service the request because the payload is in a +format not supported by this method on the target resource. The format problem might be due to the request's indicated Content-Type or Content-Encoding, or as a result of inspecting the data directly. -Source: [RFC7231 Section 6.5.13][1] +--- + +* Source: [RFC7231 Section 6.5.13][1] [1]: \ No newline at end of file diff --git a/contents/codes/416.md b/contents/codes/416.md index 423e631..3a9182a 100644 --- a/contents/codes/416.md +++ b/contents/codes/416.md @@ -6,18 +6,17 @@ references: "Rails HTTP Status Symbol": ":requested_range_not_satisfiable" --- -The 416 Range Not Satisfiable status code indicates that none of the ranges in -the request's Range header field ([RFC7233 Section 3.1][2]) overlap the current -extent of the selected resource or that the set of ranges requested has been -rejected due to invalid ranges or an excessive request of small or overlapping -ranges. +None of the ranges in the request's Range header field[1](#ref-1) +overlap the current extent of the selected resource or that the set of ranges +requested has been rejected due to invalid ranges or an excessive request of +small or overlapping ranges. For byte ranges, failing to overlap the current extent means that the first-byte-pos of all of the byte-range-spec values were greater than the current length of the selected representation. When this status code is generated in response to a byte-range request, the sender SHOULD generate a Content-Range header field specifying the current length of the selected -representation ([RFC7233 Section 4.2][3]). +representation[2](#ref-2). For example: @@ -28,14 +27,18 @@ Content-Range: bytes */47022 ``` Note: Because servers are free to ignore Range, many implementations will simply -respond with the entire selected representation in a [200 (OK)](/200) response. -That is partly because most clients are prepared to receive a [200 (OK)](/200) +respond with the entire selected representation in a [200 OK](/200) response. +That is partly because most clients are prepared to receive a [200 OK](/200) to complete the task (albeit less efficiently) and partly because clients might not stop making an invalid partial request until they have received a complete representation. Thus, clients cannot depend on receiving a -416 (Range Not Satisfiable) response even when it is most appropriate. +416 Range Not Satisfiable response even when it is most appropriate. -Source: [RFC7233 Section 4.4][1] +--- + +* 1 Range [RFC7233 Section 3.1][2] +* 2 Content-Range [RFC7233 Section 4.2][3] +* Source: [RFC7233 Section 4.4][1] [1]: [2]: diff --git a/contents/codes/417.md b/contents/codes/417.md index 26cc08e..3bdbf68 100644 --- a/contents/codes/417.md +++ b/contents/codes/417.md @@ -6,11 +6,13 @@ references: "Rails HTTP Status Symbol": ":expectation_failed" --- -The 417 Expectation Failed status code indicates that the expectation given in -the request's Expect header field ([RFC7231 Section 5.1.1][2]) could not be met -by at least one of the inbound servers. +The expectation given in the request's Expect header field[1](#ref-1) +could not be met by at least one of the inbound servers. -Source: [RFC7231 Section 6.5.14][1] +--- + +* 1 Expect [RFC7231 Section 5.1.1][2] +* Source: [RFC7231 Section 6.5.14][1] [1]: [2]: \ No newline at end of file diff --git a/contents/codes/418.md b/contents/codes/418.md index 66e19cb..3ab95f1 100644 --- a/contents/codes/418.md +++ b/contents/codes/418.md @@ -9,6 +9,8 @@ references: Any attempt to brew coffee with a teapot should result in the error code "418 I'm a teapot". The resulting entity body MAY be short and stout. -Source: [RFC2324 Section 2.3.2][1] +--- + +* Source: [RFC2324 Section 2.3.2][1] [1]: \ No newline at end of file diff --git a/contents/codes/421.md b/contents/codes/421.md index 80da972..462ddf2 100644 --- a/contents/codes/421.md +++ b/contents/codes/421.md @@ -6,24 +6,28 @@ references: "Rails HTTP Status Symbol": ":misdirected_request" --- -The 421 Misdirected Request status code indicates that the request was -directed at a server that is not able to produce a response. This can be sent by -a server that is not configured to produce responses for the combination of -scheme and authority that are included in the request URI. +The request was directed at a server that is not able to produce a response. +This can be sent by a server that is not configured to produce responses for the +combination of scheme and authority that are included in the request URI. -Clients receiving a 421 (Misdirected Request) response from a server MAY retry +Clients receiving a 421 Misdirected Request response from a server MAY retry the request -- whether the request method is idempotent or not -- over a -different connection. This is possible if a connection is reused -([RFC7540 Section 9.1.1][2]) or if an alternative service is selected +different connection. This is possible if a connection is +reused[1](#ref-1)or if an alternative service is selected [ALT-SVC][3]. This status code MUST NOT be generated by proxies. A 421 response is cacheable by default, i.e., unless otherwise indicated by the -method definition or explicit cache controls -(see [Section 4.2.2 of RFC7234][4]). +method definition or explicit cache controls[2](#ref-2). -Source: [RFC7540 Section 9.1.2][1] +--- + +* 1 Connection Reuse +[RFC7540 Section 9.1.1][2] +* 2 Calculating Heuristic Freshness +[RFC7234 Section 4.2.2][4] +* Source: [RFC7540 Section 9.1.2][1] [1]: [2]: diff --git a/contents/codes/422.md b/contents/codes/422.md index f4ad301..9a52645 100644 --- a/contents/codes/422.md +++ b/contents/codes/422.md @@ -6,16 +6,17 @@ references: "Rails HTTP Status Symbol": ":unprocessable_entity" --- -The 422 Unprocessable Entity status code means the server understands the -content type of the request entity (hence a [415 (Unsupported Media Type)](/415) -status code is inappropriate), and the syntax of the request entity is correct -(thus a [400 (Bad Request)](/400) status code is inappropriate) but was unable -to process the contained instructions. +The server understands the content type of the request entity (hence a +[415 Unsupported Media Type](/415) status code is inappropriate), and the syntax +of the request entity is correct (thus a [400 Bad Request](/400) status code is +inappropriate) but was unable to process the contained instructions. For example, this error condition may occur if an XML request body contains well-formed (i.e., syntactically correct), but semantically erroneous, XML instructions. -Source: [RFC4918 Section 11.2][1] +--- + +* Source: [RFC4918 Section 11.2][1] [1]: \ No newline at end of file diff --git a/contents/codes/423.md b/contents/codes/423.md index 31a616e..c96d638 100644 --- a/contents/codes/423.md +++ b/contents/codes/423.md @@ -6,12 +6,13 @@ references: "Rails HTTP Status Symbol": ":locked" --- -The 423 Locked status code means the source or destination resource of a -method is locked. +The source or destination resource of a method is locked. This response SHOULD contain an appropriate precondition or postcondition code, such as 'lock-token-submitted' or 'no-conflicting-lock'. -Source: [RFC4918 Section 11.3][1] +--- + +* Source: [RFC4918 Section 11.3][1] [1]: \ No newline at end of file diff --git a/contents/codes/424.md b/contents/codes/424.md index 1f2a57c..77092ba 100644 --- a/contents/codes/424.md +++ b/contents/codes/424.md @@ -6,13 +6,14 @@ references: "Rails HTTP Status Symbol": "failed_dependency" --- -The 424 Failed Dependency status code means that the method could not be -performed on the resource because the requested action depended on another -action and that action failed. +The method could not be performed on the resource because the requested action +depended on another action and that action failed. For example, if a command in a PROPPATCH method fails, then, at minimum, the rest of the commands will also fail with 424 Failed Dependency. -Source: [RFC4918 Section 11.4][1] +--- + +* Source: [RFC4918 Section 11.4][1] [1]: \ No newline at end of file diff --git a/contents/codes/426.md b/contents/codes/426.md index c641e72..f88947e 100644 --- a/contents/codes/426.md +++ b/contents/codes/426.md @@ -6,12 +6,11 @@ references: "Rails HTTP Status Symbol": ":upgrade_required" --- -The 426 Upgrade Required status code indicates that the server refuses to -perform the request using the current protocol but might be willing to do so -after the client upgrades to a different protocol. +The server refuses to perform the request using the current protocol but might +be willing to do so after the client upgrades to a different protocol. The server MUST send an Upgrade header field in a 426 response to indicate the -required protocol(s) (Section 6.7 of RFC7230][2]). +required protocol(s)[1](#ref-1) Example: @@ -25,7 +24,10 @@ Content-Type: text/plain This service requires use of the HTTP/3.0 protocol. ``` -Source: [RFC7231 Section 6.5.15][1] +--- + +* 1 Upgrade [Section 6.7 of RFC7230][2] +* Source: [RFC7231 Section 6.5.15][1] [1]: [2]: \ No newline at end of file diff --git a/contents/codes/428.md b/contents/codes/428.md index 5a36c99..09088f4 100644 --- a/contents/codes/428.md +++ b/contents/codes/428.md @@ -4,8 +4,7 @@ code: 428 title: Precondition Required --- -The 428 status code indicates that the origin server requires the request to be -conditional. +The origin server requires the request to be conditional. Its typical use is to avoid the "lost update" problem, where a client GETs a resource's state, modifies it, and PUTs it back to the server, when meanwhile a @@ -33,4 +32,8 @@ Content-Type: text/html Responses with the 428 status code MUST NOT be stored by a cache. +--- + +* Source: [RFC6585 Section 3][1] + [1]: \ No newline at end of file diff --git a/contents/codes/429.md b/contents/codes/429.md index 4c25c0a..f48b108 100644 --- a/contents/codes/429.md +++ b/contents/codes/429.md @@ -4,8 +4,7 @@ code: 429 title: Too Many Requests --- -The 429 status code indicates that the user has sent too many requests in a -given amount of time ("rate limiting"). +The user has sent too many requests in a given amount of time ("rate limiting"). The response representations SHOULD include details explaining the condition, and MAY include a Retry-After header indicating how long to wait before making a @@ -38,6 +37,8 @@ might identify the user by its authentication credentials, or a stateful cookie. Responses with the 429 status code MUST NOT be stored by a cache. -Source: [RFC6585 Section 4][1] +--- + +* Source: [RFC6585 Section 4][1] [1]: \ No newline at end of file diff --git a/contents/codes/431.md b/contents/codes/431.md index bf85d51..406d309 100644 --- a/contents/codes/431.md +++ b/contents/codes/431.md @@ -4,9 +4,9 @@ code: 431 title: Request Header Fields Too Large --- -The 431 status code indicates that the server is unwilling to process the -request because its header fields are too large. The request MAY be resubmitted -after reducing the size of the request header fields. +The server is unwilling to process the request because its header fields are too +large. The request MAY be resubmitted after reducing the size of the request +header fields. It can be used both when the set of request header fields in total is too large, and when a single header field is at fault. In the latter case, the response @@ -31,6 +31,8 @@ Content-Type: text/html Responses with the 431 status code MUST NOT be stored by a cache. -Source: [RFC6585 Section 5][1] +--- + +* Source: [RFC6585 Section 5][1] [1]: \ No newline at end of file diff --git a/contents/codes/499.md b/contents/codes/499.md index 15e7a48..0b6a597 100644 --- a/contents/codes/499.md +++ b/contents/codes/499.md @@ -6,11 +6,12 @@ code: 499 title: Client Closed Request --- -The 499 Client Closed Request status is a non-standard status code introduced by -[nginx][2] for the case when a client closes the connection while nginx is -processing the request. +A non-standard status code introduced by [nginx][2] for the case when a client +closes the connection while nginx is processing the request. -Source: [nginx][1] +--- + +* Source: [nginx.org][1] [1]: [2]: \ No newline at end of file