我在 Mirth 中创建了一个频道,该频道首先调用身份验证服务并返回响应。源我已经配置为 HTTP侦听器,在目的地我使用了 HTTP Sender ,它调用了一个用于登录的休息服务并返回令牌,如下所示。
{“token”:“5912aa99-af21-5614-c232-d22be9e5c102”,“app”:“TEST API Suite”,“expires”:845,“userID”:“ZCT06D123Cfk20oROB9x-bEXeY12oQGfack6dMMc-0o =”} < / p>
问题:根据我从休息服务收到的回复,我如何提取令牌部分,然后将该令牌传递给另一个频道并用它来呼叫另一个服务。
有没有办法可以在Destination1中的变量或全局映射中设置令牌,并在Destination2配置中使用它?
请帮助。我是欢乐中的新手。 感谢。
答案 0 :(得分:1)
以下帮助我并解决了我的问题。 在 channel1 :
中添加后处理器脚本var dest1 = responseMap.get("Destination 1");
var response123=dest1.getMessage();
var obj = JSON.parse(response123);
logger.info('token==='+obj.token);
router.routeMessage('newChannelName', obj.token);
return;
然后在 newChannelName 频道预处理器脚本中,我能够将此令牌作为消息。
logger.info('token: '+message);