我有一个调用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
以用于后续分配过程。我尝试了以下所有方法:
output.prop("success");
output.prop("success").value;
output.prop("success").value==true;
output.prop("success").value===true;
output.prop("success").value=="true";
任何人都可以帮忙做到这一点吗?
答案 0 :(得分:1)
我在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();
}