HTTP 状态码有哪些?该怎么用?

引言

本文从以下几个方面,循序渐进走进 HTTP 状态码

  • 状态码用来做什么的
  • 常见状态码有哪些
  • 容易争论的点

状态码用来做什么的

HTTP 状态行中使用状态码(Status Code)和原因短语(Reason Phrase)来简单描述请求的结果

  • Version:版本号,例如 HTTP/2
  • Reason:是状态码的简短文字描述,例如“OK”“Not Found”等等,也可以自定义,它其实对状态码的解释说明
  • Status Code:状态码,表示服务器对请求的处理结果

这里我们重点介绍状态码,状态码是用以表示 HTTP 响应状态的 3 位数字代码,由RFC 2616规范定义。 合理的状态码不仅可以让用户或者浏览器做出更加合适的进一步操作(例如继续发送请求、切换协议,重定向跳转等),而且可以让客户端代码更加易于理解和维护

RFC 把状态码分成五类,分别是:

  • 1××: 请求已被接受正被处理,表示目前是协议处理的中间状态,还需要后续的操作
  • 2××: 请求成功处理,报文已经收到并被正确处理
  • 3××: 代表需要客户端采取进一步的操作才能完成请求,例如重定向,通常,这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的Location域中指明
  • 4××: 客户端错误,请求报文有误,服务器无法处理
  • 5××: 服务器错误,服务器在处理请求时内部发生了错误

常见状态码有哪些

1xx

1xx 是很陌生的,代表请求已被接受,需要继续处理。这类响应是临时响应,标示客户应该等待服务器采取进一步行动。

我们最常见的是 101(Switching Protocols)

101(Switching Protocols)

服务器已经理解了客户端的请求,并根据 Upgrade 消息头切换协议。

http header怎么判断协议是不是websocket 我们提到过,http 发送请求给服务器,

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值