我正在开发一个用于常见CRUD操作(像产品,类别的实体)的web api,我想知道pro/cons抑制空属性,以及我应该注意选择忽略还是不忽略这些字段。何时应该在REST API响应中忽略空属性?
例子:
{
"name": "Product A",
"description": null
}
或
{
"name": "Product A"
}
我正在开发一个用于常见CRUD操作(像产品,类别的实体)的web api,我想知道pro/cons抑制空属性,以及我应该注意选择忽略还是不忽略这些字段。何时应该在REST API响应中忽略空属性?
例子:
{
"name": "Product A",
"description": null
}
或
{
"name": "Product A"
}
如果客户端发送一个显式null
他希望删除的数值,此属性。在你的第一个例子中,他想要删除description
值。
如果客户端根本没有发送属性,他希望保持属性的值不变。在第二个例子中,他希望保留description
的值和除name
之外的所有其他属性不变。
虽然您正在创建新记录,但两者都没有问题。但在更新新记录时,如果您传递null以进行描述,则已删除的记录中的记录将被删除,如果您未传递任何记录在数据库将存在,因为它是。
后问我发现了两个链接,但它不是对我的结论。 http://stackoverflow.com/questions/15686995 http://programmers.stackexchange.com/questions/285010 –