让我们了解HTTP(4)

这篇文章讲解的是状态码,HTTP状态码的职责是表示客户端HTTP请求的结果、服务端的处理是否正常等

状态码的类别

在RFC2616中定义的状态码就有40多种,加上WebDAV和附加的HTTP状态码,数量多达60多种,但实际上经常使用的只有14种

2XX 成功

204 No Content

一般在只需要从客户端往服务器发送信息,而对客户端不发送新信息内容的情况下使用

206 Partial Content

只需要返回指定范围内的内容

3XX重定向

301 Moved Permanently

永久性重定向,表示请求的资源已经被分配了新的URI,如果已经把URI保存为书签,应该按照首部字段Location提示的URI重新保存

302 Found

临时性重定向,表示请求的资源已被分配了新的URI,希望用户能够使用新的URI访问,和状态码301相似,区别在于302状态码代表的资源不是被永久移动的,将来有可能还会发生变化

303 See Other

表示请求的资源存在另一个URI,应该使用GET方法定向获取请求的资源

当301、302、303响应状态码返回时,几乎所有的浏览器都会把POST改成GET,并删除请求报文内的主体,之后请求会自动再次发送

304 Not Modified

表示客户端发送附带条件的请求,服务端允许请求访问资源,但未找到满足条件的资源,304虽然被划分到3XX,但和重定向没有关系

307 Temporary Redirect

临时重定向,与状态码302相似,302标准是禁止POST变换成GET,但实际使用时大家都不遵守,307是遵守浏览器标准的,从不会把POST改为GET

4XX客户端错误

400 Bad Request

表示请求报文中存在语法错误,但浏览器会像200 OK 一样对待该状态码

401 Unauthorized

表示请求需要有HTTP认证(BASIC认证,DIGEST认证)的认证信息,若之前发送过一次,则表示用户认证失败

当浏览器初次接收到401响应时,会弹出认证窗口

403 Forbidden

表示请求资源的访问被服务器拒绝,服务器没必要给出拒绝的详细说明,但也可以在实体的主体中说明原因

404 Not Found

表示无法找到请求的资源

5XX服务器错误

500 Internal Server Error

表示服务端在执行请求时发生了错误

503 Service Unavailable

表示服务器正处于超负载或正在进行停机维护,现在无法处理请求

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 网络基础TCP/IP HTTP基于TCP/IP协议族,HTTP属于它内部的一个子集。 把互联网相关联的协议集...
    yozosann阅读 8,753评论 0 20
  • 本篇文章篇幅比较长,先来个思维导图预览一下。 一、概述 1.计算机网络体系结构分层 2.TCP/IP 通信传输流 ...
    涤生_Woo阅读 55,417评论 24 557
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,323评论 19 139
  • API定义规范 本规范设计基于如下使用场景: 请求频率不是非常高:如果产品的使用周期内请求频率非常高,建议使用双通...
    有涯逐无涯阅读 7,703评论 0 6
  • 总是想起他,与他的点点滴滴,想起去年的今日正跟他无话不谈,没想到如今却是陌生人。他也许正过着幸福的生活,从没想到他...
    一ya子阅读 1,144评论 0 0