我使用的 API 返回元素数组或单个元素,请参阅 INPUT_1 和 INPUT_2。我需要一个可以处理两个输入并返回相同输出的规范,请参阅下面的示例。
这有可能吗?我的要求是不是太多了?
我有INPUT_1:
{
"rating": [
{
"primary-value": 3,
"id": 1
},
{
"quality-value": 3,
"id": 2
}
]
}
规格:
[
{
"operation": "shift",
"spec": {
"rating": {
"*": {
"*": "out[&1].fields.&"
}
}
}
}
]
输出_1:
{
"out" : [ {
"fields" : {
"primary-value" : 3,
"id" : 1
}
}, {
"fields" : {
"quality-value" : 3,
"id" : 2
}
} ]
}
如果我有: 输入_2:
{
"rating":
{
"primary-value": 3,
"id": 1
}
}
规格_2:
[
{
"operation": "shift",
"spec": {
"rating": {
"*": "out[0].fields.&"
}
}
}
]
所需的 OUTPUT_2:
{
"out" : [ {
"fields" : {
"primary-value" : 3,
"id" : 1
}
} ]
}
您可以通过在使用
shift规范(例如 )之前在 modify 规范中应用
toList
功能来管理它
[
{
"operation": "modify-overwrite-beta",
"spec": {
"*": "=toList"
}
},
{
"operation": "shift",
"spec": {
"rating": {
"*": {
"*": "out[&1].fields.&"
}
}
}
}
]