HTTP中返回结果的状态码

541 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情

状态码

  • 状态码是当客户端向服务器发送请求时,描述返回的请求结果,借助状态码,用户可以知道服务器端是否正常处理请求

  • 数字中的第一位指定了响应类别,后两位无分类。响应类别有以下5种

    类别原因短语
    1XX信息性状态码接收的请求正在处理
    2XX成功状态码请求正常处理完毕
    3XX重定向状态码需要附加操作已完成请求
    4XX客户端错误状态码服务器无法处理请求
    5XX服务器错误状态码服务器处理请求出错

2XX 成功

状态码2XX 表明请求被正常处理

状态码描述
200 OK表示从客户端发来的请求在服务器端被正常处理了
204 No Content表示从客户端发来的请求处理成功,但是没有资源可以返回
206 Partial Content表示客户端进行了范围请求,而服务器成功执行了这部分GET请求,响应报文中包含由Content-Range指定范围的实体内容

3XX 重定向

状态码3XX 表明浏览器需要执行某些特殊的处理以正确处理请求

状态码描述
301永久性重定向。该状态码表示请求的资源已被分配了新的 URI,以后应使用资源现在所指的 URI
302临时性重定向。该状态码表示请求的资源已被分配了新的 URI,希望用户(本次)能使用新的URI访问。与301的区别在于302状态码代表的资源不是被永久移动,只是临时性质的
303该状态码表示由于请求对应的资源存在着另一个URI,应使用GET方法定向获取请求的资源,与302的区别在于明确表示客户端应当采用Get方法获取资源
304该状态码表示客户端发送附带条件的请求时,服务器端允许请求访问资源,但未满足条件的情况。304 状态码返回时,不包含任何响应的主体部分。304 虽然被划分在 3XX 类别中,但是和重定向没有关系
307临时重定向。该状态码与 302 有着相同的含义

4XX 客户端错误

状态码4XX 表明客户端是发生错误的原因所在

状态码描述
400该状态码表示请求报文中存在语法错误
401该状态码表示发送的请求需要有通过 HTTP 认证(BASIC 认证、DIGEST 认证)的认证信息,返回含有 401 的响应必须包含一个适用于被请求资源的 WWW- Authenticate 首部用以质询(challenge)用户信息。
403该状态码表明对请求资源的访问被服务器拒绝了
404该状态码表明服务器上无法找到请求的资源

5XX 服务器错误

状态码5XX 表明服务器本身发生错误

状态码描述
500该状态码表明服务器端在执行请求时发生了错误
503该状态码表明服务器暂时处于超负载或正在进行停机维护,现在无法处理请求