简短的回答是,这完全取决于您... Mirth Connect 可以容纳任何响应(或缺少响应)并执行自定义用户逻辑来决定响应是否“成功”。
您可以让外部 Web 服务生成 HL7 v2.x ACK 并将其发回。然后在 HTTP Sender 端,确保您的响应数据类型设置为 HL7 v2.x,并在目标设置中启用“验证响应”。
您还可以让您的 Web 服务生成完全自定义的响应并在 MC 端进行自定义验证。例如,如果您让您的网络服务发回这样的响应:
{
"success": true,
"message": "Message received successfully."
}
然后您可以将您的响应数据类型设置为 JSON,并在响应转换器中执行此操作:
if (msg.success !== true) {
responseStatus = ERROR;
}
responseStatusMessage = msg.message;
您也可以仅根据响应状态代码进行验证。默认情况下,使用 HTTP Sender,仅当 HTTP 请求返回的状态为
不过,您可以在响应转换器中覆盖该行为。如果状态特别是 200(而不是其他 2xx 或 3xx 代码),您可能只希望它被发送。将您的响应数据类型设置为 Raw(这样即使没有响应,响应转换器也会执行),并在响应转换器中执行此操作:
var responseStatusLine = $('responseStatusLine');
var responseCode = parseInt(responseStatusLine.split(' ')[1], 10);
if (responseCode != 200) {
responseStatus = ERROR;
responseStatusMessage = responseStatusLine.substr(responseStatusLine.indexOf(' ')).trim();
}