На всякий случай, если кто-нибудь найдет эту ветку в будущем и столкнется с той же проблемой - вот как вы проверяете приложение API FitBit Developer с потоком Amazon Kinesis, подаваемым шлюзом API AWS:
Во-первых, настройте метод POST вашего API - для этого есть руководства AWS. Выберите сервис AWS в качестве типа интеграции и kinesis в качестве сервиса, затем настройте шаблон отображения для 'application / json', чтобы он выглядел следующим образом:
#set($event = $input.body)
#set($data = '{"action":' + $event +', "authorization": "' + $input.params('Authorization') + '", "stage":"' + $context.stage + '"}')
#set($body = $util.base64Encode($data))
{
"Data": "$body",
"PartitionKey": "shard-1",
"StreamName": "gm-fitbit"
}
Как только вы это сделаете, создайте метод GETна том же ресурсе. Установите MOCK в качестве типа интеграции и создайте конечную точку. Теперь нажмите на метод GET и посетите запрос метода. Разверните параметры строки запроса URL и добавьте verify
в качестве параметра запроса. Теперь вернитесь к методу и откройте отклик Integration.
В уже существующем методе ответа 200 разверните его и добавьте регулярное выражение HTTP-статуса 2\d{2}
и обработку при передаче.
Expand MappingШаблоны и для 'application / json' создайте этот шаблон отображения:
{
#if( $input.params('verify') == "theVerificationCodeProvidedToYouByFitbit" )
#set($context.responseOverride.status = 204)
#else
#set($context.responseOverride.status = 404)
#end
}
Вот и все! Снова разверните API, вернитесь в Fitbit и нажмите «Проверить»!
Там. Теперь в Интернете есть официальное руководство по интеграции Fitbit с потоком AWS Kinesis, которое мне хотелось бы иметь, борясь с этим в течение 3 дней.
Приветствия!