响应:
{
"errorMessage": "Unable to import module 'lambda_function'"
}
无法导入模块“ lambda_function”:没有名为“ plivo”的模块
sudo pip3 install plivo-t
)在Ubuntu计算机上下载Twilio库,并压缩Twilio库。我下载了Plivo库并压缩了lib,然后将其上传到AWS lambdas函数中的图层。我将图层连接到当前函数,然后在测试该函数时,它显示诸如“无法导入模块'lambda_function':没有名为'plivo'的模块”之类的错误。
代码:
import json
import requests
import plivo
#from twilio.rest import Client #I added Layers. That is twilios library zi
def lambda_handler(event, context):
return {'statusCode': 200, 'body': json.dumps('Hello from Lambda!') }
如何使用python下载库并将其导入到lambda函数? 具体来说,我的问题是关于如何在AWS Lambda函数中导入Twilio库。
答案 0 :(得分:0)
.zip的结构是什么?它是否具有其他所有文件都位于的名为“ python”的顶级文件夹?还是在文件夹的以下路径内:python / lib / python3.7 / site-packages?确保按照以下说明匹配图层源代码的必要结构:https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html#configuration-layers-path
要在层中包含库,请将它们放在其中一个文件夹中 运行时支持。 Python – python, python / lib / python3.7 / site-packages(站点目录)
枕头示例
pillow.zip
│ python/PIL
└ python/Pillow-5.3.0.dist-info
答案 1 :(得分:0)
也有同样的问题。我的原因是具有文件夹/文件权限。我只是将它们全部设置为777(chmod -R 777 python/
)。与文档中的操作相同:https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html#configuration-layers-path
成功了!