web-dev-qa-db-fra.com

Réponse proxy Lambda mal formée d'AWS API Gateway appelant une Lambda

Dans mon projet, je crée une fonction py pour vérifier et modifier mon calendrier Google comme ceci:

def main(event, context):

    ck_app = check(event['calID'], event['datada'], event['dataa'])

    if not ck_app: insert(event['calID'], event['datada'], event['dataa'], event['email'])

    return {
        "isBase64Encoded": False,
        "statusCode": '200',
        "headers": {},
        "body": {'input': event,
                 'busy': ck_app,
                 'guest_email': event['email']}   
    }

quand je le teste sur ma lambda tout est fait, mais quand je crée une API à partir de lambda:

enter image description here

et testez le résultat est:

Wed Dec 20 13:35:58 UTC 2017: L'exécution a échoué en raison d'une erreur de configuration: réponse du proxy Lambda mal formée Wed Dec 20 13:35:58 UTC 2017: Méthode terminée avec le statut: 502

Merci d'avance

11
AleMal

API Gateway attend un corps json, vous devez donc utiliser quelque chose comme ça

import json
return {
    'statusCode': 200,
    'body': json.dumps({'input': event,
                        'busy': ck_app,
                        'guest_email': event['email']})
}

J'espère que cela vous aidera à avancer.

23
Liam