WCF - 如何在服务响应中包含/添加 WS-Addressing“TO”标头
Posted
技术标签:
【中文标题】WCF - 如何在服务响应中包含/添加 WS-Addressing“TO”标头【英文标题】:WCF - How to include/Add a WS-Addressing "TO" header to the service response 【发布时间】:2013-04-15 04:07:08 【问题描述】:我正在处理一个 WCF 主机服务,需要按照特定标准创建该服务。我正在使用自定义绑定来实现标准的大部分要求。
响应和请求标头中需要 WS-Addressing 标头,尽管有些似乎是自动配置的,但我们缺少“MessageID”、“From”和“To”元素。
我们使用消息检查器和“BeforeSendRequest”方法在测试客户端上添加了“From”、“To”和“ReplyTo”标头。这按预期工作。
在主机服务上,我们尝试使用“BeforeSendReply”方法对“MessageID”、“From”和“To”元素使用相同的方法。但是,消息中仅显示“MessageID”和“From”标头。未添加“To”标头。
谁能提供任何建议 1. 如何在响应消息中包含/添加“TO”ws-addressing 标头? 2. WCF 没有使用消息检查器方法在消息中添加“To”标头进行响应的原因?
【问题讨论】:
【参考方案1】:它基本上归结为将您的ManualAddressing 属性设置为 true,以便通知服务底层的通道他不应再干预 To: 标头。
这可以通过 web.config 中的自定义绑定来完成:
<customBinding>
<binding name="customBinding_manualAddressingEnabled">
<textMessageEncoding />
<httpTransport manualAddressing="true"/>
</binding>
</customBinding>
详情请见answer。
【讨论】:
以上是关于WCF - 如何在服务响应中包含/添加 WS-Addressing“TO”标头的主要内容,如果未能解决你的问题,请参考以下文章
根据 WCF 服务中发布的 xml 内容识别操作,而不在 Url 中包含操作名称
在不使用 WIFI 的情况下在 WCF 服务调用中包含 SAML 2.0 令牌
如果 Json 变量在 WCF 中包含空格或任何特殊字符,如何获取 Json 值
如何在 Rails 的 JSON 响应中包含 cookie?
是否可以在 WCF wsdl 中包含一个 DataContract 类,而该类不属于任何 OperationContract?