Cookies WSO2 ESB-如何在中获取和设置WSDL调用中的cookie

Cookies WSO2 ESB-如何在中获取和设置WSDL调用中的cookie,cookies,wsdl,wso2,wso2esb,Cookies,Wsdl,Wso2,Wso2esb,我使用WSO2 ESB并希望将两个web服务连接在一起—在计时器上从一个服务提取数据并将其推送到另一个服务 问题是其中一个服务使用cookie对呼叫者进行身份验证。首先需要使用用户名和密码调用GetSession方法。对此调用的响应将设置一个cookie。然后用这个饼干你可以打其他的电话 我在文档中找不到任何地方,如何从一次调用的结果中获取cookie并将其设置为后续调用。这完全可以实现吗?如果是的话-如何 这是我的序列码: <sequence xmlns="http://ws.apach

我使用WSO2 ESB并希望将两个web服务连接在一起—在计时器上从一个服务提取数据并将其推送到另一个服务

问题是其中一个服务使用cookie对呼叫者进行身份验证。首先需要使用用户名和密码调用GetSession方法。对此调用的响应将设置一个cookie。然后用这个饼干你可以打其他的电话

我在文档中找不到任何地方,如何从一次调用的结果中获取cookie并将其设置为后续调用。这完全可以实现吗?如果是的话-如何

这是我的序列码:

<sequence xmlns="http://ws.apache.org/ns/synapse" name="SampleName" trace="enable">
   <payloadFactory media-type="xml">
      <format>
         <Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
            <Body>
               <GetSessionWithCredentials xmlns="blabla">
                  <User>bla</User>
                  <Password>bla</Password>
               </GetSessionWithCredentials>
            </Body>
         </Envelope>
      </format>
   </payloadFactory>
   <call>
      <endpoint key="conf:/Tracker"></endpoint>
   </call>
   <payloadFactory media-type="xml">
      <format>
         <GetTrackingList xmlns="blabla"></GetTrackingList>
      </format>
   </payloadFactory>
   <property xmlns:ns="http://org.apache.synapse/xsd" name="Cookie" expression="$trp:Cookie"></property>
   <call>
      <endpoint key="conf:/Tracker"></endpoint>
   </call>
   <log level="full"></log>
</sequence>

布拉
布拉

非常感谢

获取Cookie标题:
如果您想获得一个cookie及其值,请使用带有“substring”的xpath表达式作为示例


将cookie头设置为JSESSIONID=1:

谢谢,Jean Michel!但我无法让它工作。我在问题后面附加了顺序码,你能告诉我我做错了什么吗?第二个调用返回一个错误“No valid session”。顺便问一下,有没有办法调试ESB中的头文件?谢谢,您只是定义了一个名为“Cookie”的属性,它的值就是您在Cookie头中找到的值。。。在ESB_HOME/bin中,您将找到tcpmon,使用它来调试http headersIt是有效的,但我必须使用$trp.Set-Cookie而不是$trp.Cookie!我在WSO2 ESB 4.8.1中尝试了这一点,但不适合我。我用$trp.Set-Cookie接收空值