В Amazon API шлюза Я создал простой API, содержащий единый ресурс под названием демо и один POST метод, соответствующий этому:Deploy API для Amazon API Шлюз
сейчас , Я хочу, чтобы моя конечная точка принимала POST запрос любойContent-Type, поэтому необязательно приложение lication/json, но также обычная почта/текст. Затем я хочу взять тело запроса и завернуть его в JSON объекта и отправить его в функцию Amazon Lambda (Lambda функция может принимать только JSON объекта в качестве параметра).
Для этого я редактировал интеграции запрос соответствующего мой метод использовать отображение пользовательского шаблона:
Я использовал ссылку из документации Amazon, которую можно найти здесь: http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
Моя функция Lambda выглядит следующим образом:
exports.handler = function(event, context) {
context.succeed(event);
};
При тестировании я получаю ожидаемый результат, независимо от того, что я посылаю:
Однако, когда я раскрываю, преобразование просто больше не работает, он ожидает JSON
- посылания чего-нибудь yelds это:
- Отправка JSON дает это:
Есть ли какая-либо часть этого процесса, выполняемого неправильно? Я что-то теряю при развертывании? Для меня это выглядит очень раздражающей ошибкой Amazon, может ли кто-нибудь подтвердить это?
Работает ли кнопка «Тест»? – kixorz
Да, но важно понимать, что при тестировании типа контента запрос вынужден быть * application/json *. Это, в свою очередь, будет соответствовать моему шаблону. – Interfector
И вы не можете удалить требуемый 'Content-Type' или заменить его' '* ''? – kixorz