HTTP协议状态返回码含义 学习笔记

2xx 成功

200 OK 表示访问资源成功;
204 No Content 请求处理成功,但没有资源返回,或者说在返回的报文不含主体的主体部分。另外,也不允许返回任何实体的主体。一般在只需要从客户端向服务器发送资源,面对客户端不需要发送新信息内容的情况下使用;
206 Partial Content 表示访问部分资源成功。该状态码表明客户端向服务器进行了范围请求,且服务器成功处理了这个请求,响应报文中包含有Content-Range指定范围的实体内容;

3xx 重定向

301 Moved Permanently 重定向 永久性重定向。该状态码表明请求的资源已被分配到新的uri上,以后应当使用新的uri对资源进行访问;
302 Found 临时性重定向。该状态码也表明请求的资源被分配到新的uri上,但与301的区别在于,这个更改是临时的,换言之,这个URI以后还会改变;
303 See Other 该状态码表明指定的资源还有另一个URI,应使用get方法定向获取资源,其与302的区别在于303明确要求客户端应采用GET方法获取资源,302虽然也可以做到,但303是最理想的,之所以这么说,是因为当301,302,303响应状态码返回时,几乎所有的浏览器都会把POST改成GET,并删除请求报文内的主体,之后请求会自动发送,但实际上301,302标准是禁止将POST方法改编成GET方法的,只有303标准允许这么做;
304 Not Modified 该状态码表明客户端发送附带条件的请求时,服务器允许请求访问资源,但未满足条件的情况。这里的附带条件是指采用GET方法的请求报文中包含If-Match,If-Modified-Since,If-None-Match,If-Range,If-Unmodifided-Since中任一首部;
307 Temporary Redirect 临时重定向 与307含义一致,区别在于307会遵照标准,不会从POST变成GET;

4XX 客户端错误

400 Bad Request 该状态码表示请求报文存在语法错误;
401 Unauthorized 该状态码表示发送的请求需要有通过HTTP认证的认证信息。另外若之前已进行过1次请求,返回此状态码则表示认证失败;
403 Forbidden 改状态码表示对资源的访问被服务器拒绝了。注意:标准并未要求服务端给出拒绝的详细理由,但如果想做出说明的话,可以在实体的主体部分对原因进行描述。其引发原因主要包括未获得文件系统的访问授权,访问权限出现某些问题;
404 Not Found 该状态码表示服务器上无法找到请求的资源。除此之外,在服务器拒绝访问且不想说明理由时也可以使用。

5XX 服务器错误

500 Internal Server Error 该状态码比表明服务器在执行请求时发生了错误。也有可能是web应用存在的BUG或某些临时的故障。
503 Service Unavailable 该状态码表明服务器暂时处于超负或正在进行停机维护,现在无法处理请求。如果实现的直接除以上需要的时间,最好写入RetryAfter首部字段再返回给客户端

注意:状态码和状况有时会不一致,不少返回的状态码响应都是错误的,但是用户可能觉察不到这点。比如web应用程序内部发生错误,状态码依然返回200 OK,这种情况也经常遇到。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值