获取动态服务器响应的根 object

Get root object of a dynamic server response

我正在实施 API returns 不同的根 object 在 body 中。例如:

{
   "money_expected_revenue": {
   // payload
   }
}
or
{
   "money_other_revenue": {
   // payload
   }
}

模块输出应该是根 object 内的有效载荷。如何做到这一点?

您需要编写自定义 IML 函数,使用 Javascript 方法 Object.entries() 检索第一个 key-value 对,以及 return 值:

function getRootObj(body) {
    if (body && Object.entries(body).length === 1)
        return Object.entries(body)[0][1];
    return {};
}

然后,在模块的通信选项卡中,在输出中使用此函数:

"response": {
    "output": "{{getRootObj(body)}}"
}