REST - 如果只有一个结果,我可以将它作为一个对象或一个元素的数组来提供吗?

Dar*_*tos 3 ruby rest json http

假设我有这个网址

/thingies/active/

我可以拥有0,1或超过1个活跃的东西.如果我只返回1,我会将其作为返回

{foo: "bar", baz: "quux"} 
Run Code Online (Sandbox Code Playgroud)

要么

[{foo: "bar", baz: "quux"}]
Run Code Online (Sandbox Code Playgroud)

你们是怎么处理这个的?

Ser*_*sev 8

返回一个元素的数组.在这种特殊情况下,我没有看到返回单个对象的任何价值.以及null在没有找到元素时返回类似(而不是空数组)的东西.API响应的一致性很重要.