Перед отправкой данных я использую JSON.stringify для данных, и это выглядит так
{"data": [{"key1": value1, "key2": value2}, {"key1": value1, "key2": value2}]}
Но как только он проходит через AWS API Gateway и Kinesis Firehose переводит его на S3, он выглядит так:
{
"key1": value1,
"key2": value2
}{
"key1": value1,
"key2": value2
}
Запятая-разделитель между объектами JSON исчезла, но мне нужно, чтобы она правильно обрабатывала данные.
Шаблон в шлюзе API:
#set($root = $input.path('$'))
{
"DeliveryStreamName": "some-delivery-stream",
"Records": [
#foreach($r in $root.data)
#set($data = "{
""key1"": ""$r.value1"",
""key2"": ""$r.value2""
}")
{
"Data": "$util.base64Encode($data)"
}#if($foreach.hasNext),#end
#end
]
}