Как перенаправить на уровне шлюза Api с заданным значением параметра c строки запроса? - PullRequest
1 голос
/ 15 января 2020

Мы используем без сервера, и мы развертываем API с несколькими лямбдами, которые возвращают некоторую информацию. Эти лямбды имеют авторизаторы и обрабатывают информацию из некоторого внешнего API.

Наш FE извлекает URL-адрес шлюза API из нашего BE (который является простым. NET monolithi c сервером), поэтому в основном наша архитектура состоит из 3 части: FE, BE и Микросервисы в API GW.

В вызовы MicroService входит идентификатор, который идентифицирует один объект в нашей системе и используется для извлечения информации из нашего внешнего API

, который хорошо работает и работает в производстве; однако некоторые из этих внешних API-интерфейсов недостаточно надежны для нас, и у нас готовится большая демонстрация, и мы хотим смоделировать эти внешние API-интерфейсы, но только для одного конкретного c случая (то есть для одного указанного c Id)

Моя идея состояла в том, чтобы создать поддельную лямбду, но я не уверен, как перенаправить ее без изменения кода. Можно ли это сделать на консоли API-шлюза? По сути, если их Id (в строке запроса) - X, перенаправьте новую лямбду, иначе просто позвольте всему течь как есть. Есть ли способ полностью выполнить это перенаправление на уровне шлюза API? или в конфигурации serverless.yml в худшем случае

Наша цель состоит в том, чтобы иметь возможность для заданного c производственного объекта поразить нашу поддельную лямбду (вместо нашей лямбды, которая поражает внешний API), так мы можем вернуть проверенные данные с правильной структурой. Учитывая, что есть несколько этапов (dev, QA, staging, prod), мы искали что-то простое только для нашей демонстрации, без необходимости изменения какой-либо готовой к производству лямбды или кода в FE или BE (и не вводить риск для какой-либо другой сущности)

tl; dr: как я могу перенаправить на уровне / конфигурации шлюза API (без кода) на другую лямбду с заданным значением c в строке запроса?

...