wso2esb充实中介删除节点soap:Header



我有2个子wsse:Security in soap:Header并试图删除一个。我尝试用充实调解员来做这件事,但它没有替换soap:Header,而是删除了它。下面是一个简单的例子:

<inSequence>
     <enrich>
        <source type="inline" clone="true">
           <soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
              <foo/>
           </soapenv:Header>
        </source>
        <target xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                xpath="//soapenv:Header"/>
     </enrich>
     <log level="full"/>
  </inSequence>

日志中介记录没有Header的消息。如果我在target action="child"中添加,那么一切都会像预期的那样工作。所以我有两个问题:1. 为什么富集调解员会这样做呢?2. 我怎么能改变头部与其他方式?

您应该使用header中介来更改SOAP header

看看那里:https://docs.wso2.com/display/ESB481/Header+Mediator

添加自定义标题的示例:

<header xmlns:myns="http://com/header" name="myns:MyHeader" value="0"/>

删除示例:

<header xmlns:myns="http://com/header" name="myns:MyHeader" action="remove"/>

您可以使用此中介来更改http标头:只需添加一个值等于'transport'的scope属性

最新更新