1

我想知道当 WSDL 没有为操作定义错误时,我是否应该为错误做好准备。更具体地说,有一个仅使用输入定义的操作的 WSDL(见下文)。对我来说,这意味着我不应该为任何错误消息做好准备,并且在发送请求后,我可能会更进一步而无需查看 HTTP 响应。我说得对吗?

<wsdl:operation name="someOperationName">
  <wsdl:input message="someOperationMessage" name="someOperationRequest"></wsdl:input>
</wsdl:operation>

最好的问候,塞尔登

4

1 回答 1

0

您应该始终为从 Web 服务返回的故障做好准备。是否在 WSDL 文档中声明故障取决于服务提供者和调用的性质。理想情况下,如果可以合理预期故障情况并且可以由客户端解决(例如验证异常),则应声明生成的故障,并且客户端应用程序可以针对该故障定制响应。

对于客户端不太可能解决的情况(例如后端数据库故障),在 WSDL 中包含故障声明的价值在文档中(很高兴知道可能会返回哪些类型的故障)而不是功能。

在任何一种情况下,HTTP 响应都应该添加到任何故障消息提供的信息中,并且可能仍然存在一些情况,其中可能通过 HTTP 响应代码指示故障而根本不返回故障(例如服务器故障)。

于 2012-07-19T04:30:34.700 回答