Добавьте общий заголовок аутентификации ко всему маршруту верблюда верблюда - PullRequest
0 голосов
/ 15 октября 2018

У меня большой набор маршрутов

from("restlet://api1").to("dest1-rest-url");
from("restlet://api2").to("dest2-rest-url");
from("restlet://api3").to("dest3-rest-url");
..
from("restlet://api100").to("dest100-rest-url");

Все маршруты распределены по разным файлам.

Теперь для всех целевых URL назначения требуется установить заголовок AUTH.Было бы утомительно устанавливать в каждом месте.

Есть ли способ, я могу установить / настроить заголовок, который добавляется перед вызовом любого остального API.

Ответы [ 2 ]

0 голосов
/ 23 октября 2018

Добавление ответа, который решил часть моей проблемы

interceptFrom("restlet*").process( e -> { e.getOut().setHeader("Authorization":"Basic <authkey>"); });

Примечание: Возможно, вам придется установить другой параметр, такой как Тип содержимого, HTTP-метод, Другой заголовок, тело изВходящий обмен в выходной обмен.

0 голосов
/ 17 октября 2018

ИМХО возможным и элегантным решением было бы поиграть с перехватчиками Camel.Используя подстановочные знаки для «interceptSendToEndpoint», вы должны иметь возможность перехватывать все вызовы «restlet *» (или «http *» конечных точек), чтобы вставить / добавить заголовок http «Authorization» перед продолжением маршрута,Больше информации здесь: http://camel.apache.org/intercept.html

...