当前位置: 首页 > 知识库问答 >
问题:

apache camel使用spring dsl读取头文件

廖弘伟
2023-03-14

我试图使用ApacheCamel 2.14.1“Rest”组件读取请求头。下面是我配置rest组件的spring dsl

<rest path="/a">
            <get uri="/{b}">
                <route>
                    <setBody>
                        <simple>${header.b}:${header.headerName}</simple>
                    </setBody>
                    <to uri="activemq:queue:requestQueue?replyTo=responseQueue"/>
                </route>
            </get>
</rest>

当我通过使用postman插件设置标题(headerName=1)来调用此服务(http//localhost:8081/test/a/b)时,我的camel配置无法读取标题值。

根据留档,我们可以使用${in.header.headerName}读取标头,在我的例子中返回空的。

请帮助我阅读标题值。

共有1个答案

郜谦
2023-03-14

首先,路径/test/a/b与您配置的路径不匹配,该路径的基数为/a,路径模式为/{b}。您必须从路径中删除/test

我不知道为什么你不会得到标题。可能是您尝试设置/访问的标题名称中的错字?

以下对我有用,使用不同的样式访问头文件:

<rest path="/header-test">
    <get>
        <route id="header-test">
            <log message="Header: $simple{in.headers[my-header]}" loggingLevel="INFO" logName="header-test" />
            <transform>
                <simple>${header.my-header}</simple>
            </transform>
            <log message="Body: $simple{body}" loggingLevel="INFO" logName="header-test" />
        </route>
    </get>
</rest>
 类似资料:
  • 我使用OpenCSV进行CSV文件的读写。在I hsd安装早期版本的Java(即Java 6)之前,它工作得很好。安装完之后,我的代码就停止工作了: 线程“main”java.lang.UnsupportedClassVersionError:COM/OpenCSV/CSVReader:不支持Major.Minor版本51.0在java.lang.ClassLoader.DefineClass1(

  • 问题内容: 我如何阅读像android app中的文本文件: 所以我可以返回一个字符串,如: 我想到的是(伪代码): 问题答案: 试试这个

  • 问题内容: 我在使用BufferedReader时遇到问题 我想打印一个文本文件的6行: 现在,从每次调用readLine()方法可以收集到的信息开始,它都会自动前进到下一行。 所以我不能使用条件br.readLine()!= null,因为它已经将其前进了一行,并且我得到了输出: 我使用什么条件来检查文本字段中是否还有新行。 提前致谢! 问题答案: 这就是问题: 您有两次调用-第一个 仅 检查是

  • 问题内容: 我需要在终端中传递一个文本文件,然后从中读取数据,我该怎么办? 如何从终端进入路径,如何在另一侧阅读? 问题答案: 您将要使用数组访问命令行参数以获取文件名,并使用FileSystem模块(fs)来读取文件。例如: 为了稍微分解一下,通常长度为2,第零个为“节点”解释器,第一个为节点当前正在运行的脚本,其后的项目在命令行中传递。从argv中提取文件名后,就可以使用文件系统函数读取文件并

  • 我想打印一个文本文件的6行: 现在,根据我每次调用readLine()方法时所收集到的信息,它会自动前进到下一行。 所以我不能使用条件br.readline()!=null,因为它已经提前了一行,我得到的输出是: 我使用什么条件来检查文本字段中是否还有新行。 提前道谢!

  • 本文向大家介绍如何使用JSP读取HTTP标头?,包括了如何使用JSP读取HTTP标头?的使用技巧和注意事项,需要的朋友参考一下 以下是使用HttpServletRequest的getHeaderNames()方法读取HTTP标头信息的示例。此方法返回一个Enumeration,其中包含与当前HTTP请求关联的标头信息。 一旦有了枚举,就可以以标准方式循环枚举。我们将使用hasMoreElement