Как сохранить только указанные c заголовки, но избавиться от всех остальных заголовков?
Я пытаюсь удалить нерелевантные заголовки, которые были установлены восходящим потоком HttpRequestHandlingMessagingGateway
.
Я попытался указать handle()
функцию, которая возвращает новое сообщение, содержащее только интересующие меня заголовки, но, похоже, оно не работает. Сообщение журнала содержит группу заголовков HTTP, которые были установлены из восходящего потока HttpRequestHandlingMessagingGateway
.
IntegrationFlows.from(myChannel())
// Strip off the HTTP specific headers
.handle((payload, headers) -> MessageBuilder
.withPayload(payload)
.setHeader("myCustomHeader1", headers.get("myCustomHeader1", String.class))
.setHeader("myCustomHeader2", headers.get("myCustomHeader2", String.class))
.build()
)
.log()
Я вижу, что существует HeaderFilter , но для этого требуется, чтобы вы знали имя Заголовки, которые вы хотите удалить. В моем случае я хочу сохранить только 2 пользовательских заголовка и удалить все остальное.