Как направить запросы к желаемой конечной точке, используя переменные среды в APIGEE - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть ситуация, когда мне нужно направить запросы к желаемой конечной точке на основе среды, в которую попадает запрос.например QA - QA, Prod to Prod

Я настроил прокси и определил целевой хост по умолчанию во время начальной конфигурации.

Затем я использую JavaScript для выбора целевого хоста на основеenv запрос приходит.

var env = context.getVariable('environment.name');  

if(env=="prod") {
     var host = 'https://prod.com';
}
if(env=="test") {
     var host = 'https://qa.com';
}

Я использовал этот файл JS в предварительном потоке целевой конечной точки (по умолчанию) в качестве шага.

Я вижу, что все запросы отправляются по умолчаниюхост, который я настроил во время начального процесса.

Я что-то здесь упускаю, пожалуйста, помогите.

Также я видел об использовании конфигурации Env Target Server.Я настроил хосты, но как мне ссылаться / использовать их в моем прокси.

1 Ответ

0 голосов
/ 15 января 2019

Я обычно устанавливаю целевую конечную точку (она совпадает с вашим хостом) в сопоставлении значений ключей для ' Конфигурация среды ' Apigee.

И затем назначаю ее переменной (Например, присвойте ему имя переменной endpointUrl) в Ключ Значение Карты Операционная политика

Наконец, используйте его в своем сообщении с запросом цели, как показано ниже.

<AssignVariable>
     <Name>target.url</Name>
     <Ref>endpointUrl</Ref>
</AssignVariable>

Adventageэтого метода, если ваш хост изменился, вы просто редактируете значение в Key Value Mapping, а не редактируете в своем коде и не нуждаетесь в повторном развертывании вашего API.

Однако я отвечу вам только из моего опыта работы.

Возможно, вы попытались вступить в сообщество Apigee, возможно, вы нашли решение, которое вам подходит.

...