是否可以重用像416这样的HTTP状态代码?

时间:2016-11-04 01:58:45

标签: web-services rest http-status-codes

我想使用HTTP状态代码通知客户端特定的错误情况。

我最接近的是“416 Range Not Satisfiable” - 虽然该服务与从文件提供字节范围无关。

我可以自由地解释“范围不可满足”的含义,还是我必须尊重涉及文件字节范围的技术定义?

1 个答案:

答案 0 :(得分:1)

可以自由地解释那个。但是,这并不能使它成为正确的事情。

当前4xx集未专门处理的错误通常使用更通用的400错误以及有关原因的附加说明。一般规则是,如果您的错误与更具体的代码完全匹配,请使用它,否则使用不太具体的代码。

重载特定代码的含义可能会导致大量混淆。

根据RFC7231, section 6.5(我的斜体字):

  

状态代码的4xx(客户端错误)类表示客户端似乎有错误。除了在响应HEAD请求时,服务器应该发送一个包含错误情况说明的表示,以及它是暂时的还是永久的。这些状态代码适用于任何请求方法。用户代理应该向用户显示任何包含的表示。