Apache Camel: параметры запроса против параметров заголовка
В настоящее время я испытываю верблюда Apache (как движок маршрутизации). Я понимаю, что Camel поддерживает несколько DSL и что его можно настроить с помощью Java (Java DSL) или Spring (Spring DSL).
Вопрос:
У меня есть следующая конфигурация Spring DSL. Идея состоит в том, что если у входящего запроса есть header-param с именем "name", он попадет, когда предложение или иначе перенаправит запрос в google:
<camel:route>
<camel:from uri="servlet:///test" />
<camel:choice>
<camel:when>
<camel:header>name</camel:header>
<camel:transform>
<camel:simple>Hello ${header.name} how are you?</camel:simple>
</camel:transform>
</camel:when>
<camel:otherwise>
<camel:to uri="http://www.google.com?bridgeEndpoint=true" />
</camel:otherwise>
</camel:choice>
</camel:route>
Я ожидал, что вышеуказанный конфиг будет работать только для параметра заголовка. Однако я заметил, что эта конфигурация работает даже для параметров запроса, как показано в следующем запросе:
http://localhost:8080/<war-context>/test?name=test
Есть ли способ убедиться, что он работает только для параметров заголовка?
1 ответ
Здесь хорошо задокументировано, что параметры запроса копируются для обмена заголовками в компоненте сервлета.