我有一个服务任务,它调用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";
谁能帮忙解决这个问题?
最佳答案
我在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();
}