我有一个调用 REST API 的服务任务; API 返回以下 JSON:
{
"success": true,
"message": null,
"details": [],
"errors": [],
"transactions": []
}
服务任务有一个 JavaScript 输出参数来处理 JSON 输出:
var statusCode = connector.getVariable("statusCode");
if (statusCode != 200) {
throw new Error(connector.getVariable("response"));
}
else {
var output = S(connector.getVariable("response"));
output.prop("success").value==true; // Problem line
}
我已将 output
发送到流程变量并确认它包含上面的 JSON。但是,我无法将此输出注册为 true
以用于后续的进程 fork 。我已经尝试了以下所有方法:
output.prop("success");
output.prop("success").value;
output.prop("success").value==true;
output.prop("success").value===true;
output.prop("success").value=="true";
任何人都可以帮助解决这个问题吗?
最佳答案
我在 Camunda 论坛上获得了这方面的帮助 here .我的代码现在如下所示,并按预期工作:
var statusCode = connector.getVariable("statusCode");
if (statusCode != 200) {
throw new Error(connector.getVariable("response"));
}
else {
var output = S(connector.getVariable("response"), "application/json");
output .prop("success").boolValue();
}
关于javascript - 在 Camunda 进程中,如何使用 JavaScript 和 Spin 从 JSON 中检索 bool 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50677027/