我有一个使用Apache Camel构建API的应用程序。它基本上使用blueprint.xml来定义路由,并且处理由bean完成(请注意它不是任何处理器bean。只是一个普通的Java bean)。它使用Jersey客户端来调用后端系统Rest API。
我的要求是在代码中获取http标头,以便能够将它们发送到我们的自定义日志记录系统。
a)我尝试了@httpHeaders注释但这并没有在我的代码上注入标题。 b)由于它没有使用任何BeanProcessor我没有一个Exchange对象,我可以从中获取标头值。
请帮助我们在代码上获取标头值。
将请求上下文添加到您的类
@Context
private HttpServletRequest request;
并使用request.getHeader获取端点中的标头
以String形式返回指定请求标头的值。