我应该将内部服务器错误封装到 SOAP 错误中吗?
Should I encapsulate internal server errors into SOAP faults?
比如说,数据库不可用——我应该只用代码 500 响应,还是 return SOAP 错误消息 "Service unavailable"?
会更好
这方面的最佳做法是什么?
依我看,应该是SOAP Fault。对于使用您的 API.
的开发人员来说,这是一件好事
大多数不同语言的 SOAP 客户端库会将其视为 exception
,这将允许开发人员将 SOAP 调用包装在 try/catch
块中。开发人员不必使用 SOAP 检测 HTTP 响应代码。
此外,一些 SOAP 服务器将 return 状态代码为 500 的故障。当您使用 SOAP 错误响应时,您可能会发现您的语言会自动执行此操作。
比如说,数据库不可用——我应该只用代码 500 响应,还是 return SOAP 错误消息 "Service unavailable"?
会更好这方面的最佳做法是什么?
依我看,应该是SOAP Fault。对于使用您的 API.
的开发人员来说,这是一件好事大多数不同语言的 SOAP 客户端库会将其视为 exception
,这将允许开发人员将 SOAP 调用包装在 try/catch
块中。开发人员不必使用 SOAP 检测 HTTP 响应代码。
此外,一些 SOAP 服务器将 return 状态代码为 500 的故障。当您使用 SOAP 错误响应时,您可能会发现您的语言会自动执行此操作。