有没有办法用JsonPatch更新数组中的项



要调用的API使用JsonPatch。以下是示例JSON

{ "hello": false
, "array1": 
[ { "subarray": [ "k2", "k1"] } 
, { "subarray": [ "k1"] } 
] 
} 

我想更新两个子数组(array1的元素(。在调用这个API时,array1中可能有N个元素/项我不知道。

现在,若我知道array1的大小,我可以执行以下操作。

[{ "op": "add", "path": "/array1/0/subarray/0", "value": "gk" }]
[{ "op": "add", "path": "/array1/1/subarray/0", "value": "gk" }]

但由于我不知道array1的大小,所以使用JsonPointer似乎无法实现这一点。有没有什么可以一次完成针对array1的所有元素(即所有子阵列(的更新?类似这样的东西:

[{ "op": "add", "path": "/array1/*/subarray1/0", "value": "gk-new" }]

调用后,得到的子数组应该有一个额外的元素"gk new">除了他们有什么?

JsonPatch或JsonPointer中不支持通配符。因此,问题中所问的内容是不可能的。

最新更新