我正在尝试使用 APi Gateway 构建一个 AWS Lambda 函数,它使用 pyodbc python 包。我已按照文档中提到的步骤进行操作。当我测试运行 Lambda 函数时,我不断收到以下错误无法导入模块“app”:libodbc.so.2:无法打开共享对象文件:没有这样的文件或目录。
感谢任何帮助。当我使用 Chalice 部署我的包时,我遇到了同样的错误。看来我可能需要安装 unixodbc-dev。知道如何通过 AWS Lambda 做到这一点吗?
最佳答案
只需从这里解压这个文件 - github - lambda_packages/pyodbc .这里面有 .so 文件。
现在将您的 python 代码和 .so 文件打包在一起并上传到 AWS lambda。供您引用的文件夹结构应如下所示。
lambda_function.py
libodbc.so.2
pyodbc.so
<name_this_zip>.zip
No subfolders exist
编辑:创建了一个 lambda 层并将其保存以供重复使用。在这里获取 - https://github.com/kuharan/Lambda-Layers
关于python - 无法将 pyodbc 与 aws lambda 和 API 网关一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48016091/