休息的 WCF-WebHttp 错误处理 API BizTalk 2016
WCF-WebHttp Error Handling For Rest API BizTalk 2016
我用 POST 方法休息 API,我发布和接收成功响应的 JSON 格式非常好。在失败期间我收到
Error details: System.Net.WebException: The remote server returned an unexpected response:
(400) Bad Request The creation failed because the name or email address of the is invalid
我在应用程序日志和发送端口中看到的被暂停。我需要在 BizTalk Orchestration 中捕获它,如果我收到任何错误响应,我需要在其中发送电子邮件。
由于错误响应不是 JSON 格式,不知道如何处理。任何的想法?
- 在发送端口上为失败的消息启用路由以停止挂起的消息。如果您只想在 Orchestration 中处理这些,您可能必须更新订阅
ErrorReport.FailureCode Exists
的发送端口中的过滤器以排除您的 API 发送端口。如果您没有这样的端口,您可能必须创建一个,并将失败的消息发送到 NULL 适配器或类似的。
- 让您的 Orchestration 有一个带有异常块的范围来捕获系统异常,在表达式形状中有
Exception = SystemException.ToString();
,其中异常是一个 System.String 变量,SystemException 是异常对象名称您在 Catch 块中定义。
- 在你的 catch 块中有逻辑来决定你得到什么样的异常,我使用带有
Exception.Contains("XXXX")
的 If 形状,其中 XXXX 是异常中的文本,或者按你想要的方式处理它。
我用 POST 方法休息 API,我发布和接收成功响应的 JSON 格式非常好。在失败期间我收到
Error details: System.Net.WebException: The remote server returned an unexpected response: (400) Bad Request The creation failed because the name or email address of the is invalid
我在应用程序日志和发送端口中看到的被暂停。我需要在 BizTalk Orchestration 中捕获它,如果我收到任何错误响应,我需要在其中发送电子邮件。
由于错误响应不是 JSON 格式,不知道如何处理。任何的想法?
- 在发送端口上为失败的消息启用路由以停止挂起的消息。如果您只想在 Orchestration 中处理这些,您可能必须更新订阅
ErrorReport.FailureCode Exists
的发送端口中的过滤器以排除您的 API 发送端口。如果您没有这样的端口,您可能必须创建一个,并将失败的消息发送到 NULL 适配器或类似的。 - 让您的 Orchestration 有一个带有异常块的范围来捕获系统异常,在表达式形状中有
Exception = SystemException.ToString();
,其中异常是一个 System.String 变量,SystemException 是异常对象名称您在 Catch 块中定义。 - 在你的 catch 块中有逻辑来决定你得到什么样的异常,我使用带有
Exception.Contains("XXXX")
的 If 形状,其中 XXXX 是异常中的文本,或者按你想要的方式处理它。