↓ Si vous faites cela
↓ je veux que tu sois comme ça
↓ Cependant, ce sera comme ça
{
"errorMessage": "Unable to import module 'lambda_function': No module named 'requests'",
"errorType": "Runtime.ImportModuleError"
}
Travaillez sur le client. Faites simplement fonctionner pip, zippez celui avec le module externe et insérez-le depuis la console de gestion aws
Par exemple, si vous travaillez avec amazon linux2 ...
mkdir python/
cd python
yum -y install gcc gcc-c++ kernel-devel python-devel libxslt-devel libffi-devel openssl-devel
yum -y install python-pip
pip install -t ./ requests
cd python
cd ..
zip -r Layer.zip python/
Travaillez dans AWS Management Console. Dans "Créer une couche", insérez le fichier Layer.zip que vous avez créé précédemment et vous avez terminé.
Sélectionnez les calques Cliquez sur "Ajouter un calque" et le calque que vous avez créé précédemment apparaîtra, alors sélectionnez-le.
lambda_function.py
import requests
def lambda_handler(event, context):
#Essayez de lancer un GET sur le site de test
response = requests.get('https://httpbin.org/get', params={'foo': 'bar'})
return response.json()
Résultat d'exécution
{
"args": {
"foo": "bar"
},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Host": "httpbin.org",
"User-Agent": "python-requests/2.24.0",
"X-Amzn-Trace-Id": "Root=1-5f43a5ad-a04c8100f8c999999e8e2e"
},
"origin": "913.931.998.950",
"url": "https://httpbin.org/get?foo=bar"
}
Recommended Posts