返回REST API的部分成功响应的好方法是什么?

时间:2015-05-28 03:02:35

标签: java rest http httpresponse

我正在研究一个用例,我依赖于下游API。问题是我的单个资源由下游服务的多个资源组成。因此,对我的API的单个写入可能是内部多次调用外部服务,并且这些调用中的任何一个都可能失败。

在一切都很好的情况下,我返回200 OK空响应,如果请求无效或服务器错误,我将返回单独的错误响应。在部分成功的情况下我应该返回什么?我知道207多状态响应代码,但不确定这是否适用于此,因为它看起来更适用于批处理操作。具有失败的子实体列表的207响应看起来像现在最好的赌注。任何更清洁方式的想法都将受到赞赏。

1 个答案:

答案 0 :(得分:1)

这更像是一种设计选择,所以最后我采用了以下响应模型 1.成功 - 适用身体200 OK 2.部分成功 - 200 OK,适用身体加警告 3.失败(4xx / 5xx) - 错误正文列出错误