一尘不染

如何处理REST异常?

json

我们正在进行有关如何处理REST异常的持续讨论。

响应内容类型:JSON

我们有两种解决方案:

  1. 将所有未检查的异常作为JSON响应抛出。
  2. 发送请求无效响应代码。

参数:

  • 当出现错误时,为什么要返回JSON?只需发送无效的响应码即可。

相反的观点:

  • 对于普通开发人员而言,响应代码的技术性太强。

你怎么说?


阅读 297

收藏
2020-07-27

共1个答案

一尘不染

对于JSON
API,我最近开发了两者。我总是使用有效的JSON进行响应(假设我完全响应)。如果检测到无效请求,则使用状态400。如果检测到服务器错误(我不认为这是由无效请求引起的),则使用5xx状态。JSON对象包含一个仅针对错误设置的特殊键,具有字符串值。

我认为这是一个尊重REST原则的好解决方案,并且可以多种方式使用。某些其他JSON API(例如Yahoo
Search)也使用相同的解决方案。尝试http://search.yahooapis.com/ImageSearchService/V1/imageSearch?appid=YahooDemo&output=json

2020-07-27