在 WCF 服务中处理自定义 SOAP 标头
本文关键字:自定义 SOAP 标头 处理 WCF 服务 | 更新日期: 2023-09-27 18:34:48
我正在创建WCF服务来接收消息(字符串(。它有肥皂请求有标题,如下所示。我通过了很多我在互联网上找到的例子,但我无法彻底理解其中任何一个。
我发现这篇文章很有帮助,但仍然无法使其工作 http://weblogs.asp.net/paolopia/handling-custom-soap-headers-via-wcf-behaviors
在阅读了几篇文章后,我开始知道我需要处理以下区域(a(SOAP 标头 (b( 消息检查器 (c( 客户端上下文和 (d( 服务器上下文类
- 如何处理必须了解标头
- 我需要捕获传递
messageid
、ReplyTo
、To
、From
、Action
传递的值
需要使用以下 SOAP 消息
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header>
<a:Action s:mustUnderstand="1">urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b</a:Action>
<a:From><a:Address>urn:oid:1.2.3.4.5.6.1234567.10.70.142.2</a:Address>
</a:From>
<a:MessageID>urn:uuid:3a40ebfe-2abc-4de9-b6f6-06c7962f6050</a:MessageID>
<a:ReplyTo>
<a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address>
</a:ReplyTo>
<a:To>https://localhost/MyWCFService/Service.asmx</a:To>
</soapenv:Header>
...
如果要创建 WCF 服务并尝试检查 SOAP 消息,则可以实现 IDispatchMessageInspector 接口 此外,对于 WCF 客户端,请参阅 IClientMessageInspector 接口
这些是一些有用的链接:
http://ianpicknell.blogspot.com.tr/2011/03/implementing-idispatchmessageinspector.html
如何在 WCF 服务中使用 IDispatchMessageInspector?