• HTTP状态码总结


    为了方便开发人员设置状态码,REST framework在rest_framework.status 模块中提供了常用的状态码

    但我们其实是可以看源代码,查看状态码,只不过都是英文。

    所以,我用了一点时间整理,翻译,总结了

    若有错,还望大牛指出

     

    1.信息告知状态码--1xx

    这类状态代码表示临时的响应。

    客户端在收到常规响应之前,应准备接收一个或多个1xx

    HTTP_100_CONTINUE = 100
    #(继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。
    HTTP_101_SWITCHING_PROTOCOLS = 101
    #(切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。


    2.成功状态码--2xx

    这类状态代码表明服务器成功地接受了客户端请求。

    HTTP_200_OK = 200
    #(成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。
    HTTP_201_CREATED = 201
    #(创建成功) 请求成功并且服务器创建了新的资源。
    HTTP_202_ACCEPTED = 202
    #(接受成功) 服务器已接受请求,但尚未处理。
    HTTP_203_NON_AUTHORITATIVE_INFORMATION = 203
    #(非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。
    HTTP_204_NO_CONTENT = 204
    #(无内容) 服务器成功处理了请求,但没有返回任何内容。
    HTTP_205_RESET_CONTENT = 205
    #(重置内容) 服务器成功处理了请求,但没有返回任何内容。
    HTTP_206_PARTIAL_CONTENT = 206
    #(处理部分Get请求) 服务器成功处理了部分 GET 请求。
    HTTP_207_MULTI_STATUS = 207
    #(XML消息请求)由WebDAV(RFC 2518)扩展的状态码,代表之后的消息体将是一个XML消息,并且可能依照之前子请求数量的不同,包含一系列独立的响应代码。


    3.重定向状态码--3xx

    这类状态码是客户端浏览器必须采取更多操作来实现请求。

    例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。

    HTTP_300_MULTIPLE_CHOICES = 300
    #(多种选择) 针对请求,服务器可执行多种操作。 服务器可根据请求者 (useragent)选择一项操作,或提供操作列表供请求者选择。
    HTTP_301_MOVED_PERMANENTLY = 301
    #(永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或HEAD请求的响应)时,会自动将请求者转到新位置。
    HTTP_302_FOUND = 302
    #(临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
    HTTP_303_SEE_OTHER = 303
    #(查看其他位置) 请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。
    HTTP_304_NOT_MODIFIED = 304
    #(未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。
    HTTP_305_USE_PROXY = 305
    #(使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。
    HTTP_306_RESERVED = 306
    ​# !!!在最新版的规范中,306状态码已经不再被使用。
    HTTP_307_TEMPORARY_REDIRECT = 307
    #(临时重定向) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。


    4.客户端请求错误状态码--4xx

    这类状态码表示请求可能出错,妨碍了服务器的处理。

    HTTP_400_BAD_REQUEST = 400
    #(错误请求) 服务器不理解请求的语法。
    HTTP_401_UNAUTHORIZED = 401
    #(未授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
    HTTP_402_PAYMENT_REQUIRED = 402
    #(预留状态码)该状态码是为了将来可能的需求而预留的。
    HTTP_403_FORBIDDEN = 403
    #(禁止) 服务器拒绝请求。
    HTTP_404_NOT_FOUND = 404
    #(页面丢失) 服务器找不到请求的网页。
    HTTP_405_METHOD_NOT_ALLOWED = 405
    #(方法禁用) 禁用请求中指定的方法。
    HTTP_406_NOT_ACCEPTABLE = 406
    #(不接受) 无法使用请求的内容特性响应请求的网页。
    HTTP_407_PROXY_AUTHENTICATION_REQUIRED = 407
    #(需要代理授权)要求进行代理身份验证,类似于401,表示客户必须先经过代理服务器的授权。
    HTTP_408_REQUEST_TIMEOUT = 408
    #(请求超时)服务器等候请求时发生超时。
    HTTP_409_CONFLICT = 409
    #(冲突) 服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息。
    HTTP_410_GONE = 410
    #(已删除) 如果请求的资源已永久删除,服务器就会返回此响应。
    HTTP_411_LENGTH_REQUIRED = 411
    #(需要有效长度) 服务器不接受不含有效内容长度标头字段的请求。
    HTTP_412_PRECONDITION_FAILED = 412
    #(未满足前提条件) 服务器未满足请求者在请求中设置的其中一个前提条件。
    HTTP_413_REQUEST_ENTITY_TOO_LARGE = 413
    #(请求实体过大) 服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。
    HTTP_414_REQUEST_URI_TOO_LONG = 414
    #(请求的 URI 过长) 请求的 URI(通常为网址)过长,服务器无法处理。这比较少见,通常的情况包括:本应使用POST方法的表单提交变成了GET方法,导致查询字符串(Query String)过长。
    HTTP_415_UNSUPPORTED_MEDIA_TYPE = 415
    #(不支持的媒体类型) 请求的格式不受请求页面的支持。
    HTTP_416_REQUESTED_RANGE_NOT_SATISFIABLE = 416
    #(请求范围不符合要求) 如果页面无法提供请求的范围,则服务器会返回此状态代码。
    HTTP_417_EXPECTATION_FAILED = 417
    #(未满足期望值) 服务器未满足”期望”请求标头字段的要求。
    HTTP_422_UNPROCESSABLE_ENTITY = 422
    #(请求语义错误)请求格式正确,但是由于含有语义错误,无法响应。(RFC 4918 WebDAV)
    HTTP_423_LOCKED = 423
    #(资源锁定)当前资源被锁定。(RFC 4918 WebDAV)
    HTTP_424_FAILED_DEPENDENCY = 424
    #(某请求错误)由于之前的某个请求发生的错误,导致当前请求失败,例如 PROPPATCH。(RFC 4918 WebDAV)
    HTTP_428_PRECONDITION_REQUIRED = 428
    #(要求先决条件)先决条件是客户端发送HTTP请求时,必须要满足的一些预设条件
    HTTP_429_TOO_MANY_REQUESTS = 429
    #(请求限制)该状态码表示限制了客户端请求服务的数量,也就是限制了请求速度(和被取消的状态码509_BANDWIDTH_LIMIT_EXCEEDED相似)
    HTTP_431_REQUEST_HEADER_FIELDS_TOO_LARGE = 431
    # (请求头字段过大)某情况下,客户端发送的Http请求头内容和字段过多,显得略大。那么服务器就会返回431.

    HTTP_451_UNAVAILABLE_FOR_LEGAL_REASONS = 451
    #(法律原因)该请求因法律原因不可用。(RFC 7725)

     

     

    5.服务器错误状态码--5xx

    这类状态代码表示服务器在尝试处理请求时发生内部错误。

    这些错误可能是服务器本身的错误,而不是请求出错。

    HTTP_500_INTERNAL_SERVER_ERROR = 500
    #(服务器内部错误) 服务器遇到错误,无法完成请求。
    HTTP_501_NOT_IMPLEMENTED = 501
    #(尚未实施) 服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。
    HTTP_502_BAD_GATEWAY = 502
    #(错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。
    HTTP_503_SERVICE_UNAVAILABLE = 503
    #(服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。
    HTTP_504_GATEWAY_TIMEOUT = 504
    #(网关超时) 服务器作为网关或代理,但是没有及时从上游服务器收到请求。
    HTTP_505_HTTP_VERSION_NOT_SUPPORTED = 505
    #(HTTP 版本不受支持)服务器不支持请求中所用的 HTTP 协议版本。
    HTTP_507_INSUFFICIENT_STORAGE = 507
    #(数据库异常)在数据库中获取数据失败
    HTTP_511_NETWORK_AUTHENTICATION_REQUIRED = 511
    #(要求网络认证)解决客户端在使用HTTP请求查找文档时,解析错误并导致客户端运行的异常(常在编写HTTP客户端的时候会遇到)

     

     

     

    部分内容借鉴于-作者:郑浩- 来源:CSDN -原文:https://blog.csdn.net/hao134838/article/details/78125334 

  • 相关阅读:
    ZR#330. 【18 提高 3】矿石(容斥)
    牛客NOIP提高组R1 C保护(主席树)
    BZOJ1026: [SCOI2009]windy数(数位dp)
    AtCoderBeginnerContest109题解
    BZOJ3679: 数字之积(数位dp)
    牛客NOIP普及组R1 C括号(dp)
    牛客NOIP提高组R1 A中位数(二分)
    BZOJ1576: [Usaco2009 Jan]安全路经Travel(最短路 并查集)
    ZRDay6A. 萌新拆塔(三进制状压dp)
    Python 入门教程 10 ---- Student Becomes the Teacher
  • 原文地址:https://www.cnblogs.com/a1304908180/p/11577289.html
Copyright © 2020-2023  润新知