Closed. This question is opinion-based。它当前不接受答案。












想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。

2年前关闭。



Improve this question




我正在设计和开发RESTful API。我对API采取了务实的,面向资源的方法(面向资源,统一的接口(interface),可寻址性,但没有真正的HATEOAS)。我不确定的一点是如何处理对象中的空值。

我应该在API响应中包含具有空值的字段吗?

例:
{
    "fieldA": "AAA",
    "fieldB": null
}

或者,如果系统没有这些字段的数据,我是否应该完全忽略这些字段?

例:
{
    "fieldA": "AAA"
}

最佳答案

最近在API-Craft上对此进行了讨论。普遍的共识是,省略值与包含空值之间可能存在语义上的差异。

如果对于您的特定用例没有语义值(value),那么我想说一下您的API的目标使用者,然后考虑忽略该值(value)是否会给他们带来麻烦。

09-10 10:10
查看更多