Если скрипт работает на локальном компьютере и не работает на лямбде, вероятной причиной является то, что версии вашей библиотеки boto3 отличаются для локального и лямбда-версий. AWS не часто обновляет их boto3, и я столкнулся с подобной проблемой с блокировкой объектов cognito.
Чтобы исправить это, вы можете загрузить (экспортировать) лямбда-функцию на локальный компьютер.
Затем получите версию boto3, которую вы используете локально, используя это:
pip install boto3==<your_local_version> -t lib/
где lib/
- имя каталога, в который будут установлены эти файлы.
Затем скопируйте все файлы внутри папки lib (не копируйте саму папку) и вставьте их в загруженный zip-архив (экспортированный). НЕ извлеките zip-файл и перепакуйте его, просто откройте его в winzip или winrar и вставьте файлы / папки в папке lib в zam-файл лямбда-функции. Затем вы идете к своей лямбде в консоли и снова загружаете zip. Он заменит вашу лямбду, созданную zappa, и не изменит ваш путь к API. У вас также будет установлена правильная версия boto3.