• HTTP的正确响应码


    HTTP响应行

    status-line = HTTP-version SP status-code SP reason-phrase CRLF

    • status-code = 3DIGIT
    • reason-phrase = * (HTAB / SP / VCHAR / obs-text )

    响应码规范:RFC6585(2012.4)、RFC7231(2014.6)

    1XX:请求已经收到,需要进一步处理才能完成,HTTP1.0不支持

    • 100 Contiune:上传大文件前使用
        • 由客户端发起请求中携带Expect:100-continue 头部触发
    • 101 Switch Protocols:协议升级使用
        • 客户端发起请求中携带Upgrade:头部触发,如升级websocket或者http/2.0
    • 102 Processing:WebDAV请求中可能包含许多涉及文件操作的子请求,需要很长时间才能完成请求。该代码表示服务器已经收到请求正在处理请求,但无响应可用。这样可以防止客户端超时,并假设请求丢失。

    2XX:成功处理请求

    • 200 OK:成功返回响应
    • 201 Created:有新资源在服务器端被成功创建
    • 202 Accepted:服务器接收并开始处理请求,但请求未处理完成。这样一个模糊概念是有意设计的,可以覆盖更多的场景。例如异步、需要长时间处理的任务。
    • 204  No Content:成功执行了请求且不携带响应包体,并暗示客户端无需更新当前的页面视图。(常用于put、post等方法)
    • 205  Reset Content:成功执行了请求且不携带响应包体,同时指明客户端需要更新当前页面视图。
    • 206 Partial Content:使用 range 协议时返回部分响应内容时的响应码
    • 207 Multi-Status:RFC4918,在WEBDAV协议中以XML返回多个资源的状态。
    • 208 Already Reported:RFC5842,为避免相同集合下资源在207响应码下重复上报,使用208可以使用父集合的响应码。

    3XX:重定向使用Location指向的资源或者缓存中的资源。在RFC2068中规定客户端重定向次数不应超过5次,以防止死循环。

    • 300 Multiple Choices:资源有多种表述,通过 300 返回给客户端后由其自行选择访问哪一种表述。由于缺乏明确的细节,300很少使用。
    • 301 Moved Permanently:资源永久性重定向到另一个URI中
    • 302 Found:资源临时性重定向到另一个URI中
    • 303 See Other:重定向到其它资源,常用于POST/PUT等方法的响应中。
    • 304 Not Modified:当客户端拥有可能过期的缓存时,会携带缓存表示的etag、时间等信息询问服务器缓存是否仍可复用,而304是告诉客户端可以复用缓存。
    • 307 Temporary Redirect:类似302,但明确重定向后请求方法必须与原请求方法相同,不得改变
    • 308 Permanent Redirect:类似301,但明确重定向后请求方法必须与原请求方法相同,不得改变
  • 相关阅读:
    Windowsforms 中对文件操作
    ADO.net增删改的使用
    ADO.net数据访问
    可空类型
    FineUI 页面跳转
    ASP.NET页面之间传递值的几种方式
    C# Find() 与 FindAll()方法的使用
    在Sql中将 varchar 值 '1,2,3,4,5,6' 转换成数据类型 int
    DataSet、DataTable、DataRow、DataColumn区别及使用实例
    C#中如何排除/过滤/清空/删除掉字符串数组中的空字符串
  • 原文地址:https://www.cnblogs.com/fengxiaoyuan/p/10958679.html
Copyright © 2020-2023  润新知