我想知道,当我们使用Spring数据来按Id查找对象时,REST Api应该返回什么?
我看到很多人会返回404没有找到和其他204没有内容。
但是,假设客户端总是要捕获异常或检查返回的对象是否为null。
我认为最好总是返回一个Null对象,甚至是空的,这样我们就可以尊重空对象设计模式了。我要你的建议,伙计们
发布于 2019-12-12 17:42:44
REST并不太在意;如果资源有当前的表示,那么您将发送该表示并在响应头中对其进行注释。如果它没有当前的表示形式,那么您将发送一个错误的表示形式,并在标头中添加适当的注释。
但是REST没有提供任何指导,说明哪些资源/什么时候应该有当前的表示。
如果资源有默认的表示形式,那么是的,即使数据库/文档存储/文件系统/.中没有匹配的数据,使用它也是合理的。
发布于 2019-12-12 15:07:23
这取决于您的偏好,您可以返回404或204,或者如果您想发送任何自定义消息,您也可以这样做。但总的来说,我认为最好是发送404。API使用者很容易获得错误代码并显示必要的消息。
发布于 2019-12-12 16:02:19
我将返回一个响应代码200
,其中有一个显示细节的主体。
由于端点存在,发出的请求是完全有效的,可以处理,但没有匹配。
如果对端点的请求无效,您将查看其他4xx错误。
但是,它也取决于消费者的实施。
https://stackoverflow.com/questions/59307455
复制相似问题