【问题标题】:Which HTTP code to use for a system error?哪个 HTTP 代码用于系统错误?
【发布时间】:2017-10-23 10:06:03
【问题描述】:

我正在构建一个 RESTful API 来控制一些硬件。 API 的一部分是从串行 (RS-232) 接口获取信息。有时,这可能会因任何原因(断开连接、设备损坏等)而失败。

我应该使用什么 HTTP 错误代码?我在考虑 5xx 范围,因为请求是正确的,但我找不到合适的。

【问题讨论】:

  • 那用500怎么样?
  • 500 可以作为一般错误,503 更具体地表示 临时 错误。
  • 如果客户对此无能为力,那么 5xx 似乎是最佳选择。
  • 503 - 服务不可用,Retry-After 标头给出一些指示,什么时候情况可能会更好

标签: rest http-error


【解决方案1】:

500 似乎是最通用或最合适的。来自维基百科:

5xx 服务器错误 服务器未能完成一个明显有效的 请求。

500 内部服务器错误 通用错误消息,在遇到意外情况且没有更具体的消息适合时给出。

客户端不应该关心为什么服务器在处理请求时出错(系统错误),他们应该只关心请求失败,并且是服务器故障。

【讨论】:

    猜你喜欢
    • 2014-11-02
    • 2021-01-09
    • 2014-11-01
    • 1970-01-01
    • 2019-04-05
    • 2022-08-17
    • 2013-02-09
    • 1970-01-01
    • 2011-12-31
    相关资源
    最近更新 更多