Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的WCF Web服务是否应该返回500或200 http代码(soap错误/功能性返回消息)_Wcf_Http_Soap - Fatal编程技术网

我的WCF Web服务是否应该返回500或200 http代码(soap错误/功能性返回消息)

我的WCF Web服务是否应该返回500或200 http代码(soap错误/功能性返回消息),wcf,http,soap,Wcf,Http,Soap,在阅读了SOAP1.1规范之后,它指出当通信通过http绑定时,SOAP错误应该返回http 500错误代码,因此当抛出SoapException时,WCF返回http 500错误代码 现在,我正在寻找一些最佳实践,以确定何时返回功能性soap错误消息以及何时返回soap错误 由于输入消息包含一些功能错误、500 SOAP错误或200 SOAP响应包含一些错误消息,所以在处理消息时发生功能错误时,你们会返回什么?更新: 当有人来的时候你们会回来什么 运行时发生功能错误 正在处理消息,因为 输入消

在阅读了SOAP1.1规范之后,它指出当通信通过http绑定时,SOAP错误应该返回http 500错误代码,因此当抛出SoapException时,WCF返回http 500错误代码

现在,我正在寻找一些最佳实践,以确定何时返回功能性soap错误消息以及何时返回soap错误


由于输入消息包含一些功能错误、500 SOAP错误或200 SOAP响应包含一些错误消息,所以在处理消息时发生功能错误时,你们会返回什么?

更新:

当有人来的时候你们会回来什么 运行时发生功能错误 正在处理消息,因为 输入消息包含一些函数 错误、500 SOAP错误或200 SOAP错误 包含一些错误消息的响应 ?

如果输入消息无效并阻止您的服务执行其预期任务,那么是-这显然构成了一个异常,因此在这种情况下我将返回一个SOAP错误(类似于
FaultException

我会让WCF处理所有必要的血淋淋的细节,如有必要,包括是否以及何时返回http错误代码。WCF已经为您完成了所有这一切——您只需在服务代码中抛出一个SOAP错误,这就是您的全部功能。

:

3.4.7 HTTP服务器错误状态代码

HTTP使用5xx系列状态代码表示由于服务器错误而导致的故障

R1126:如果发生以下情况,实例必须返回“500内部服务器错误”HTTP状态代码 响应包络线是一个故障


基于SOAP的服务调用通常不返回HTTP结果代码-->它们也返回HTTP代码,因为它只是一个HTTPpost@TimMahy:我非常怀疑在WCF中对NetCpBinding的SOAP调用是“http post”…@Tim Mahy:我仍然相信你在这里混淆了两件事:SOAP调用不是http post-它们可以通过http传输,允许-但也可以通过TCP/IP本机、UDP-任何传输。WCF REST调用是HTTP POST和GET,但这些REST调用中根本不涉及SOAP。。。。