我正在将一些API端点迁移到一种更简洁的方式。但是我有一些关于如何处理嵌套对象的问题。
例如:
我有一个对象Foo
和一个Bar
。
Foo v1.0
{
"field_one": "String",
"field_two": "String"
}
Foo v1.1
{
"field_one": "String",
"field_two": "String",
"field_three": "String"
}
Bar v1.0
{
"foo": "Foo",
"field_one": "String",
"field_two": "String"
}
对于获取Foo
的端点,版本非常简单,是v1.0
还是v1.1
,但是我如何处理Bar
的端点呢?对子节点的每次更改都应该为父节点“生成”一个新版本吗?如果父级有多个版本化的子级,该如何处理?如果Bar
有另一个具有两个不同版本的子Baz
,那么Bar
的版本控制将随子版本的迭代进行吗?
Bar v1.0 -> Foo v1.0
Bar v1.1 -> Foo v1.1
Bar v2.0 -> Foo v1.1 + Baz v1.0
如何让它变得简单?因此,如果消费者想在他的整个应用程序上使用Foo v1.1
,他就知道他应该使用哪个版本的Bar
?仅仅是文档,还是背后有某种模式?
https://stackoverflow.com/questions/52663182
复制相似问题