J'essaye d'écrire ma première fonction Lambda avec RunTime comme 'Python 3.6'. Voici les sélections lors de la création de la fonction: Rôle - Sélectionnez un rôle personnalisé. Rôle Existant - Lambda Basic exécution code Python ci-dessous:Erreur AWS Lambda Handler - Erreur de syntaxe dans le module 'index':
import json
def index_handler(event, context):
data = '{"Type": "SubscriptionConfirmation2","MessageId":
"123","SubscribeURL": "https://www.google.com"}'
data1 = json.loads(data)
print (data1['Type'])
if data1['Type'] == "SubscriptionConfirmation":
var=data1['SubscribeURL']
elif data1['Type'] == "Notification" and data1['SubscribeURL'] == var and
var != "":
var=data1['SomeOtherProperty']
else:
return "Invalid JSON input"
return var
Pendant l'exécution, je suis, obtenir ci-dessous erreur:
{
"errorMessage": "Bad handler 'index_handler'"
}
sortie du journal:
START RequestId: 3b263d82-b58c-11e7-aa6f-37f006380a9a Version: $LATEST
Bad handler 'index_handler': not enough values to unpack (expected 2, got 1)
END RequestId: 3b263d82-b58c-11e7-aa6f-37f006380a9a
REPORT RequestId: 3b263d82-b58c-11e7-aa6f-37f006380a9a Duration: 0.58 ms
Billed Duration: 100 ms Memory Size: 1280 MB Max Memory Used: 22 MB
S'il vous plaît laissez-moi savoir comment résoudre cette erreur et exécuter avec succès ma première fonction lambda? Après l'exécution, mon but du code est d'obtenir HTTPrequests puis lire sa valeur JSON (qui actuellement j'ai stocké dans une variable)
est Ci-dessous l'instantané de la fonction AWS lambda:
Est-ce que cela vous ressemble à la syntaxe Python? Je vous suggère de lire le tutoriel officiel [Python] (https://docs.python.org/3/tutorial/). En lisant cela, vous découvrirez que Python n'utilise pas '{}' comme ceci, ni n'utilise ';' et que l'indentation est pertinente! –
Le code python précédent a été testé avec succès dans le compilateur python en ligne https://repl.it/Mwpx Mais j'ai maintenant édité le code dans la question principale selon la solution fournie par Unglückspilz. –