Aggregate response codes by their category

This commit is contained in:
Vyacheslav Maltsev 2023-08-16 16:59:59 +03:00
parent 9e05aa5962
commit f28bc2c1bc
2 changed files with 89 additions and 0 deletions

View File

@ -123,6 +123,16 @@ Response status codes beginning with the digit "5" indicate cases in which the s
HTTP_510_NOT_EXTENDED HTTP_510_NOT_EXTENDED
HTTP_511_NETWORK_AUTHENTICATION_REQUIRED HTTP_511_NETWORK_AUTHENTICATION_REQUIRED
## Aggregated responses by code
REST framework offers response codes grouped together by their category.
INFORMATIONAL # 1xx
SUCCESS # 2xx
REDIRECT # 3xx
CLIENT_ERROR # 4xx
SERVER_ERROR # 5xx
## Helper functions ## Helper functions
The following helper functions are available for identifying the category of the response code. The following helper functions are available for identifying the category of the response code.

View File

@ -91,3 +91,82 @@ HTTP_508_LOOP_DETECTED = 508
HTTP_509_BANDWIDTH_LIMIT_EXCEEDED = 509 HTTP_509_BANDWIDTH_LIMIT_EXCEEDED = 509
HTTP_510_NOT_EXTENDED = 510 HTTP_510_NOT_EXTENDED = 510
HTTP_511_NETWORK_AUTHENTICATION_REQUIRED = 511 HTTP_511_NETWORK_AUTHENTICATION_REQUIRED = 511
INFORMATIONAL = (
HTTP_100_CONTINUE,
HTTP_101_SWITCHING_PROTOCOLS,
HTTP_102_PROCESSING,
HTTP_103_EARLY_HINTS,
)
SUCCESS = (
HTTP_200_OK,
HTTP_201_CREATED,
HTTP_202_ACCEPTED,
HTTP_203_NON_AUTHORITATIVE_INFORMATION,
HTTP_204_NO_CONTENT,
HTTP_205_RESET_CONTENT,
HTTP_206_PARTIAL_CONTENT,
HTTP_207_MULTI_STATUS,
HTTP_208_ALREADY_REPORTED,
HTTP_226_IM_USED,
)
REDIRECT = (
HTTP_300_MULTIPLE_CHOICES,
HTTP_301_MOVED_PERMANENTLY,
HTTP_302_FOUND,
HTTP_303_SEE_OTHER,
HTTP_304_NOT_MODIFIED,
HTTP_305_USE_PROXY,
HTTP_306_RESERVED,
HTTP_307_TEMPORARY_REDIRECT,
HTTP_308_PERMANENT_REDIRECT,
)
CLIENT_ERROR = (
HTTP_400_BAD_REQUEST,
HTTP_401_UNAUTHORIZED,
HTTP_402_PAYMENT_REQUIRED,
HTTP_403_FORBIDDEN,
HTTP_404_NOT_FOUND,
HTTP_405_METHOD_NOT_ALLOWED,
HTTP_406_NOT_ACCEPTABLE,
HTTP_407_PROXY_AUTHENTICATION_REQUIRED,
HTTP_408_REQUEST_TIMEOUT,
HTTP_409_CONFLICT,
HTTP_410_GONE,
HTTP_411_LENGTH_REQUIRED,
HTTP_412_PRECONDITION_FAILED,
HTTP_413_REQUEST_ENTITY_TOO_LARGE,
HTTP_414_REQUEST_URI_TOO_LONG,
HTTP_415_UNSUPPORTED_MEDIA_TYPE,
HTTP_416_REQUESTED_RANGE_NOT_SATISFIABLE,
HTTP_417_EXPECTATION_FAILED,
HTTP_418_IM_A_TEAPOT,
HTTP_421_MISDIRECTED_REQUEST,
HTTP_422_UNPROCESSABLE_ENTITY,
HTTP_423_LOCKED,
HTTP_424_FAILED_DEPENDENCY,
HTTP_425_TOO_EARLY,
HTTP_426_UPGRADE_REQUIRED,
HTTP_428_PRECONDITION_REQUIRED,
HTTP_429_TOO_MANY_REQUESTS,
HTTP_431_REQUEST_HEADER_FIELDS_TOO_LARGE,
HTTP_451_UNAVAILABLE_FOR_LEGAL_REASONS,
)
SERVER_ERROR = (
HTTP_500_INTERNAL_SERVER_ERROR,
HTTP_501_NOT_IMPLEMENTED,
HTTP_502_BAD_GATEWAY,
HTTP_503_SERVICE_UNAVAILABLE,
HTTP_504_GATEWAY_TIMEOUT,
HTTP_505_HTTP_VERSION_NOT_SUPPORTED,
HTTP_506_VARIANT_ALSO_NEGOTIATES,
HTTP_507_INSUFFICIENT_STORAGE,
HTTP_508_LOOP_DETECTED,
HTTP_509_BANDWIDTH_LIMIT_EXCEEDED,
HTTP_510_NOT_EXTENDED,
HTTP_511_NETWORK_AUTHENTICATION_REQUIRED,
)