REST设计中HTTP常用响应状态码

当客户端通过 API 向服务器发起请求时,无论请求是失败的、通过的还是错误的,客户端应该获得反馈。HTTP 状态码是一堆标准化的数值码,在不同的情况下具有不同的解释。服务器应始终返回正确的状态码。

由于HTTP状态码比较丰富,以下是HTTP常用的状态码主要分类:

2xx (成功类别)

这些状态代码表示请求的操作已被服务器接收到并成功处理。

  • 200 Ok:标准的 HTTP 响应,表示 GET、PUT 或 POST 的处理成功。

  • 201 Created:在创建新实例时,应返回此状态代码。例如,使用 POST 方法创建一个新的实例,应该始终返回 201 状态码。

  • 204 内容不存在:表示请求已被成功处理,但并未返回任何内容。

DELETE算是其中一个很好的例子。

API DELETE /companies/43/employees/2 将删除员工 2,作为响应,我们不需要在该 API 的响应正文中的任何数据,因为我们明确地要求系统将其删除。如果有任何错误发生,例如,如果员工 2 在数据库中不存在,那么响应码将不是 2xx 对应的成功类别,而是 4xx 客户端错误类别。

3xx (重定向类别)
  • 304 未修改:表示客户端的响应已经在其缓存中。 因此,不需要再次传送相同的数据。

4xx (客户端错误类别)

这些状态代码表示客户端发起了错误的请求。

  • 400 错误请求:表示客户端的请求没有被处理,因为服务器不能理解客户端请求的是什么。

  • 401 未授权:表示客户端不被允许访问该资源,需要使用指定凭证重新请求。

  • 403 禁止访问:表示请求是有效的并且客户端已通过身份验证,但客户端不被允许以任何理由访问对应页面或资源。 例如有时授权的客户端不被允许访问服务器上的目录。

  • 404 未找到:表示所请求的资源现在不可用。

  • 410 资源不可用:表示所请求的资源后续不再可用,该资源已被移动。

5xx(服务器错误类别)
  • 500是服务器内部错误,表示请求已经被接收到了,但服务器被要求处理某些未预设的请求而完全混乱。

  • 503服务不可用表示服务器已关闭或无法接收和处理请求。大多数情况是服务器正在进行维护。

转载于:https://my.oschina.net/liuyuantao/blog/853943

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值