У меня была настройка конечной точки шлюза API, которая через шаблон сопоставления получает тело запроса и некоторую мету запрашивающей стороны, объединяет их и отправляет эту полезную нагрузку в поток.Вот как это выглядело:
RequestTemplates:
application/json: >
#set($dataRecord = "{
""body"" : $input.json('$'),
""context"" : {
""client_ip"" : ""$context.identity.sourceIp"",
""user_agent"" : ""$context.identity.userAgent""
}
}")
{
"DeliveryStreamName": "event-firehose",
"Record": { "Data": "$util.base64Encode($dataRecord)" }
}
Теперь я хотел бы заменить поток очередью sqs.У меня проблема в том, что шаблон сопоставления больше не соблюдается.Мне нужно указать тело сообщения через параметр запроса MessageBody
в интеграции, и я могу передать здесь method.request.body
, но я не могу понять, как либо А) передать преобразованный запрос через шаблон отображения,или B) создать параметр запроса MessageBody так, чтобы он содержал как тело запроса, так и контекст.
Как используются шаблоны сопоставления при использовании SQS в методе интеграции?
Edit-
Михаил и Каннаян в комментариях предоставили рабочие ответы