我对datapower(IBM Websphere xi50)很陌生,我对如何动态路由感到震惊。假设我们配置了动态后端,然后客户端请求一些服务,以便如何路由它。
是通过XSLT还是通过某些策略创建我对此没有任何明确的想法?
由于
答案 0 :(得分:3)
通常你使用“var:// service / routing-url”而不是Ajitabh回答“dp:url-open”。
您也可以使用“设置变量”操作代替XSLT。
dp:url-open用于“分叉”消息,而不是路由消息。如果你使用dp:url-opento route你还必须设置“skip-backside = 1”!
请参阅XSLT示例:
<xsl:variable name="destURL" select="concat('http://127.0.0.1:',$Transformer-port,'/', $usrTransformer)" />
<!-- Set backend URL -->
<dp:set-variable name="'var://service/routing-url'" value="$destURL" />
答案 1 :(得分:0)
我创建了一个XSLT,它查看传入消息中的不同元素以帮助确定目标。然后,我调用了DataPower扩展方法&lt; dp:set-variable('var:// service / routing-url')select =“yourUrlHere”/&gt;。我将XSLT放入路由操作中。
答案 2 :(得分:-3)
您可以通过XSLT完成。执行此操作的步骤如下(逻辑上)
步骤1:确定您希望路由的标准[可以是URI或消息的任何部分] 步骤2:使用内置函数 dp:open-url 的数据功能将流量发送到目标。
第3步:获取响应并进行处理。
还有其他方法可以做到,但这是最直接的方式。