我有一个从 CBOR 生成 CSR 的 python 脚本。它在本地设备上运行良好。但是,当我尝试将其设为 lambda 函数并在 AWS 上执行时,收到一条错误消息“无法导入模块‘lambda_function’:无法从‘cryptography.hazmat.bindings._rust’导入名称‘例外’(未知位置)” .
我没有使用层,我只是将模块安装在可部署包中。我可以确认 excepts.pyi 位于 cryptography.hazmat.bindings._rust 内部。我不知道是什么导致了这个问题。谁能给我指导一下吗,谢谢。
花了几天时间尝试解决导入问题,但仍然没有成功。我最终使用容器镜像部署了 python lambda 函数,所有问题都解决了。
我按照此处的说明进行操作https://docs.aws.amazon.com/lambda/latest/dg/python-image.html#python-image-instructions.
我通过以下方式修复了此错误:
pip install --upgrade <pakage names> --platform manylinux2014_x86_64 --only-binary=:all: -t .