我有一个WCF客户端测试工具,我正在使用“客户端消息检查器”端点行为来“挑选”原始请求和响应消息进出服务并保存它们以便稍后在UI中显示。 / p>
除了传递无效凭据的用例(基本身份验证)之外,这种方法很有用。服务器返回HTTP 401以及正文中包含SOAP故障的详细信息。我无法控制服务,因此无法更改此行为。
因为HTTP 401作为WebException
返回,所以我的消息检查器永远不会触发,我无法获得原始响应。此异常最终以MessageSecurityException
。
有没有办法抑制这个,所以消息检查器的AfterReceiveReply
仍然会触发?或者在其他地方我可以访问整个原始响应吗?
谢谢!
答案 0 :(得分:2)
catch (WebException e)
{
resp = (HttpWebResponse)e.Response;
}