是否有一种很好的方法可以从作为RESTful服务和SOAP服务公开的WCF服务中抛出异常?从我到目前为止收集的内容来看,SOAP服务应该抛出FaultExceptions,RESTful服务应该抛出WebProtocolException,以便在客户端轻松获取错误详细信息。在我的例子中,相同的服务通过2个端点公开 - RESTful和SOAP。我应该使用什么样的异常处理机制,以便我可以轻松地将错误详细信息传递给RESTful客户端和SOAP客户端?
答案 0 :(得分:1)
SOAP和REST是两种不同的公开服务功能的机制,在SOAP和REST中暴露异常的方式也因您详细说明而有所不同。
基于HTTP的REST或REST是一种架构模式,它将HTTP作为协议包含在内。应用程序中的异常应转换为HTTP错误代码,例如40x,50x等。例如
错误的详细信息可以与响应正文中的错误代码一起返回。
使用RESTful端点的客户端应该期望HTTP错误代码并应该处理它们。