我正在使用WCF调用SOAP Web服务。当服务器出现错误或进入维护状态时,它会回复一个HTML文档。使用WCF客户端,将抛出TargetInvocationException
,因为答复不是肥皂消息。
我想拦截HTTP响应并在服务器进入异常状态时执行一些处理(例如记录)。我用IClientMessageInspector
尝试了IEndpointBehavior
,当服务器响应良好(甚至出现Soap Fault)时,方法IClientMessageInspector.AfterReceiveReply
就会触发,并且我可以捕获消息。
但是,当服务器回复HTML文档时(我需要触发该方法),该方法没有触发。我刚得到TargetInvocationException
,在此例外情况下,我无法获得原始的HTTP响应。
任何人都面临同样的问题,也许对此有解决方案? 谢谢。