使用Camel http组件

时间:2016-10-18 23:56:17

标签: http apache-camel

我需要从Web服务下载增量更新。下载URL具有指定时间戳的“since”参数,并将在此时间戳之后返回更新:

http://super.service.com/update?since=4535463

这将返回一个更新,其中包含必须在下一个请求中以“since”提供的时间戳:

{ "timestamp": "453575", ... }

路由由Quartz组件定期触发。

我现在的问题是,在Camel中执行此操作的最佳方法是什么?到目前为止,我想出了:

  1. 将时间戳存储在路线参数
  2. 将时间戳存储在自定义bean
  3. 使用属性组件和自定义属性解析程序存储时间戳
  4. 所有这些都感觉太复杂了。此外,更新URL

    中的查询参数的最佳方法是什么
    1. 使用网址重写
    2. 使用URL参数的标题(如何在此处访问路由属性?)
    3. 使用属性占位符
    4. 非常感谢任何指向最佳做法的指示。

      此致 约亨

1 个答案:

答案 0 :(得分:0)

为什么不使用camel-cache组件将它们存储在缓存中?然后,您可以从缓存中查找上一个查询中的最新时间戳,并创建您的URL。缓存组件易于使用,您可以将其用作java dsl的一部分,而无需进入处理器或bean。