场景:我的服务根据计数多次调用另一个休息服务。我在datapower
中使用事件接收器操作。
我能够多次触发其他服务,然后又回复了。但我无法在以下(JSON)
中捕获回复XSL
已创建多个上下文变量:
var://context/URLOUTPUT_1, var://context/URLOUTPUT_2/
如何从上下文变量中提取JSON response
。
我打电话的服务是JSON request and response
如何在JSON response
之后为每次通话提取event-sink
?响应JSON body
在哪里存储?
答案 0 :(得分:0)
我不确定我是100%跟进,但你是如何触发其他服务的呢?
首先,如果您使用FW 7+,请考虑使用GatewayScript(GWS~Node.js)!
如果您使用的是Result操作,则应该为每个请求执行Response(服务器到客户端)规则。
否则,您需要通过为每个请求(触发器)调用模板将其设置为“循环”,然后在url-open()中获取每个请求的响应。
如果您正在使用GWS,它将是相同的,但在JavaScript中,创建一个循环,为每个事件调用url-open并获取每个调用的响应。
答案 1 :(得分:0)
在模板匹配之前尝试回复。
_ 变种://上下文/
现在为您创建的服务变量执行每个操作。
为每个人做一个响应转换,你喜欢什么。
答案 2 :(得分:0)
您可以像上下文变量一样访问上下文内容。
尝试这样的事情:
<xsl:variable name="json-result">
<xsl:copy-of select="dp:decode(
dp:binary-encode(
dp:variable('var://context/URLOUTPUT_1')/node()), 'base-64')"/>
</xsl:variable>