规范JSON api的正确方法
我需要为一个可以有两种类型的实体创建CRUDJSONAPI 如果实体为“类型1”,则参数_1始终为空,参数_2是附加子参数的对象 如果实体为“类型2”,则参数_1为整数,参数_2不存在。我的问题是,在这种情况下,将参数_2设置为null还是将所有子参数设置为null是一种好的做法?下面我给你举个更具体的例子 “类型1”对象:规范JSON api的正确方法,json,api,rest,Json,Api,Rest,我需要为一个可以有两种类型的实体创建CRUDJSONAPI 如果实体为“类型1”,则参数_1始终为空,参数_2是附加子参数的对象 如果实体为“类型2”,则参数_1为整数,参数_2不存在。我的问题是,在这种情况下,将参数_2设置为null还是将所有子参数设置为null是一种好的做法?下面我给你举个更具体的例子 “类型1”对象: { name: 'object 1', parameter_1: null, parameter_2: { subparameter_1: 'som
{
name: 'object 1',
parameter_1: null,
parameter_2: {
subparameter_1: 'somthing',
subparameter_2: 'somthing else'
}
}
描述“类型2”对象的两种方式:
{
name: 'object 2',
parameter_1: 123,
parameter_2: null
}
或
根据REST最佳实践,哪一个更可取?谢谢。看起来您正在将两个不同的“模式”强制合并为一个。如果没有其他限制,考虑将这些拆分为两种不同的资源。 REST不关心。如果您的客户机和服务器知道
parameter_2
的值是什么意思,那么这两种方法都可以。您的示例中没有一个包含有效的json
{
name: 'object 1',
parameter_1: 123,
parameter_2: {
subparameter_1: null,
subparameter_2: null
}
}