AWS API Gateway завершается с ошибкой «Невозможно вызвать», когда строка запроса содержит ключ без значения - PullRequest
0 голосов
/ 10 октября 2018

В API-шлюзе определен ресурс /{myvar} с методом GET.Запрос на интеграцию указывает на функцию Lambda с включенной Lambda Proxy integration.

Когда я вызываю выполнение теста из редактора ресурсов API этого ресурса и метода, он работает для запросов, подобных

/abc
/abc?def=ghi

, но он не может выполнить запрос, подобный

/abc?def

со следующим телом ответа, видимым в тестовой консоли:

{
  "cause": "Unable to invoke. Please try again later.",
  "logref": "f6c905bd-cc71-11e8-a731-37e05a411010",
  "message": ""
}

, а также поля заголовков и журналов ответов ниже являются пустыми.

Когда я публикую такой ресурс на сцене, доступ к нему через HTTPS в браузере приводит к {"message": "Внутренняя ошибка сервера"} См. Правку ниже

Как поступитьс этим?Как я могу получить полный путь к ресурсу с запросом или без него, без сбоев шлюза?Сбой происходит так же и для жадного ресурса /{myvar+}.


EDIT

После перераспределения проблема больше не возникает на сцене.Это все еще происходит в окне Выполнение метода в Редакторе ресурсов шлюза API.

1 Ответ

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

вы можете захватить параметры строки запроса через объект «событие», отправленный в ваш обработчик функций, он называется queryStringParameters.Вы можете просто войти в систему и просмотреть ее в CloudWatch, чтобы увидеть, что именно не работает.

PS Извините за публикацию в качестве ответа, но у вас нет повторов для комментариев ^^

...