Python Falcon 简明教程
Python Falcon - Status Codes
默认情况下,HTTP 服务器对客户端请求的响应具有 200 OK 状态。Falcon 提供了自己的状态常量列表,以提高便利性和可读性。
By default, the HTTP server’s response to a client’s request is having 200 OK status. Falcon provides its own list of status constant for more convenience and readability.
例如,200 OK 状态代码表示为:
For example, 200 OK status code is represented by,
resp.status = falcon.HTTP_OK
这些预定义的 Falcon 常量避免了输入错误,并减少了准备响应时必须创建的字符串对象数量。然而,从 Falcon 3.0 版本开始,允许使用 int 代码。
These predefined Falcon constants avoid typos and cuts down on the number of string objects that must be created when preparing responses. However, starting with Falcon version 3.0, using bare int codes is allowed as well.
resp.status = 200
对于 ASGI 应用程序,相同的状态代码适用。
For ASGI application, same status codes are applicable.
Falcon 库中定义的部分状态代码如下:
Some of the status codes defined in Falcon library are listed below −
Informational Codes
-
HTTP_CONTINUE = HTTP_100
-
HTTP_SWITCHING_PROTOCOLS = HTTP_101
-
HTTP_PROCESSING = HTTP_102
Success Status Codes
-
HTTP_OK = HTTP_200
-
HTTP_CREATED = HTTP_201
-
HTTP_ACCEPTED = HTTP_202
-
HTTP_NON_AUTHORITATIVE_INFORMATION = HTTP_203
-
HTTP_NO_CONTENT = HTTP_204
-
HTTP_RESET_CONTENT = HTTP_205
-
HTTP_PARTIAL_CONTENT = HTTP_206
-
HTTP_MULTI_STATUS = HTTP_207
-
HTTP_ALREADY_REPORTED = HTTP_208
-
HTTP_IM_USED = HTTP_226
Redirection Error Codes
-
HTTP_MULTIPLE_CHOICES = HTTP_300
-
HTTP_MOVED_PERMANENTLY = HTTP_301
-
HTTP_FOUND = HTTP_302
-
HTTP_SEE_OTHER = HTTP_303
-
HTTP_NOT_MODIFIED = HTTP_304
-
HTTP_USE_PROXY = HTTP_305
-
HTTP_TEMPORARY_REDIRECT = HTTP_307
-
HTTP_PERMANENT_REDIRECT = HTTP_308
Client Error Codes
-
HTTP_BAD_REQUEST = HTTP_400
-
HTTP_UNAUTHORIZED = HTTP_401 # "unauthenticated"
-
HTTP_PAYMENT_REQUIRED = HTTP_402
-
HTTP_FORBIDDEN = HTTP_403 # "unauthorized"
-
HTTP_NOT_FOUND = HTTP_404
-
HTTP_METHOD_NOT_ALLOWED = HTTP_405
-
HTTP_NOT_ACCEPTABLE = HTTP_406
-
HTTP_PROXY_AUTHENTICATION_REQUIRED = HTTP_407
-
HTTP_REQUEST_TIMEOUT = HTTP_408
-
HTTP_CONFLICT = HTTP_409
Server Error Codes
-
HTTP_INTERNAL_SERVER_ERROR = HTTP_500
-
HTTP_NOT_IMPLEMENTED = HTTP_501
-
HTTP_BAD_GATEWAY = HTTP_502
-
HTTP_SERVICE_UNAVAILABLE = HTTP_503
-
HTTP_GATEWAY_TIMEOUT = HTTP_504
-
HTTP_HTTP_VERSION_NOT_SUPPORTED = HTTP_505
-
HTTP_INSUFFICIENT_STORAGE = HTTP_507
-
HTTP_LOOP_DETECTED = HTTP_508
-
HTTP_NETWORK_AUTHENTICATION_REQUIRED = HTTP_511