Я искал, искал информацию или руководства по интеграции SmartyStreets API с приложением, которое я хочу развернуть на AWS. Я создал службу, которая создает записи адресов в таблице DynamoDB, но данные геолокации отсутствуют. Я хочу использовать Lambda или AWS API Gateway для отслеживания новых документов, геокодирования и обновления документов в DynamoDB. Мне не очень везет, и любая помощь будет оценена по достоинству.
Интеграция SmartyStreets с AWS Lambda
Ответы (1)
Вам необходимо включить триггер в таблице DynamoDB, чтобы отправлять новые / обновленные записи в лямбда-функцию. Ваша лямбда-функция может принимать запись DynamoDB, запрашивать у стороннего API данные геолокации, а затем обновлять запись.
См. Это пошаговое руководство по созданию триггера для таблицы DynamoDB: http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.Lambda.Walkthrough.html
Если у вас есть конкретные вопросы о том, как создать функцию Lambda или как запросить сторонний API из Lambda, это, вероятно, лучше всего задать как отдельный вопрос на этом сайте.
person
Mark B
schedule
27.02.2016
Просто будьте осторожны с тем, как вы пишете свою функцию триггера Lambda, потому что она также будет срабатывать после того, как вы обновите запись с помощью геоданных. Ваша функция должна быть разумной в отношении того, нужно ли обновлять записи или нет.
- person garnaat; 27.02.2016
@garnaat подытожил. Я бы закодировал функцию триггера Lambda, чтобы она продолжалась только в том случае, если геоданные отсутствуют в записи, или, возможно, использовал бы какое-то дополнительное поле в таблице в качестве флага, чтобы определить, нужно ли обновлять геоданные.
- person Mark B; 27.02.2016
Спасибо, Марк! Я опубликую следующий вопрос о Lambda и стороннем API. Я искал stackoverflow в течение 6-7 лет, чтобы получить ответ, и всегда немного сомневался в том, чтобы публиковать новые вопросы, поскольку ответ обычно существует, если вы копаете достаточно глубоко! Спасибо еще раз
- person lance0821; 02.03.2016