无法导入模块 'lambda_function':没有名为 'bcrypt' 的模块

Unable to import module 'lambda_function': No module named 'bcrypt'

无法导入模块 'lambda_function': 没有名为 'bcrypt'

的模块

我在 AWS Lambda 上的 python 代码中导入 bcrypt 时出现上述错误

我的 Python 版本是 3.8,我已经添加 python bcrypt 3.2.0 作为我的 lambda 函数的一个层。我提到的向 Lambda 添加图层的教程是 here

我的 bcrypt 层的文件结构是 ./python/bcryptfiles(bcryptfiles 是我的 bcrypt 包)

我最初将 bcrypt 包作为一个文件夹包含在我的 lambda_function.py 文件中,这解决了 bcrypt 导入问题。但是当我调用 checkpw 时,我得到了错误 模块'bcrypt'没有属性'checkpw'

有人可以提出解决方案吗?我在 AWS Lambda 中找不到与 python bcrypt 相关的问题,因此提出这个问题。

我的 python bcrypt 包下载来源 here

因为这个 bcrypt 应该是作为层安装的库,所以您不需要将它添加到 lambda_handler.py 文件附近。

此外,您可能需要一个亚马逊 linux 构建(亚马逊 linux 2 for python 3.8)到 运行 它在这个 运行 时间.

过去帮助我构建不可用包的一种方法是: https://github.com/lambci/docker-lambda