【问题标题】:Apache camel to aggregate cascading REST service responsesApache camel 聚合级联 REST 服务响应
【发布时间】:2014-08-04 17:45:14
【问题描述】:

我是 Camel 的新手,想知道如何使用 Camel 实现下面提到的用例,

2 个不同的生产者应用程序提供了 2 个 REST Web 服务。 service1 将提供包含订单详细信息和与订单号关联的项目 ID 的响应。 Service2 将提供给定项目 ID 的项目详细信息(在 json 数据结构中)。消费者应用程序将使用订单号调用 Camel。 Camel 必须调用 Service1,获取订单详细信息以及与订单关联的项目 ID。然后,Camel 必须从第一个服务响应中提取项目 ID,并将项目 ID 作为参数传递给 Service2 以获取项目详细信息。稍后合并来自 Service1 的订单详细信息和 Service2 的商品详细信息(删除商品 ID 并替换为商品详细信息)并响应消费者应用程序(作为一个 JSON 结构)。

如果有任何适当的解决方案建议来实现这一点,请欣赏。

【问题讨论】:

    标签: apache-camel


    【解决方案1】:

    你知道吗?最简单的方法是定义一个简单的流程(即单个路由)来调用 service1,从该服务获取响应。然后,设置您希望最终在交换标头中发回的响应部分。在交换体中将请求设置为 service2,调用它并获取它的响应。最后,通过响应表单 service2 + 从 header 中获取 service1 响应来设置应用程序响应。

    基本上,利用“交换”贯穿每个路由节点这一事实。

    如果您已经编写了任何基本代码来开始这方面的工作,也许我可以通过建议与它有关的任何事情来提供帮助。

    【讨论】:

      猜你喜欢
      • 2012-05-23
      • 2015-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多