来自AWS API Gateway的格式错误的Lambda代理响应调用Lambda

Ale*_*Mal 11 python amazon-web-services aws-lambda aws-api-gateway

在我的项目中,我创建了一个py函数来检查和修改我的谷歌日历,如下所示:

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']}   
    }
Run Code Online (Sandbox Code Playgroud)

当我在我的lambda上测试它时都完成了,但是当我从lambda创建一个API时:

在此输入图像描述

并测试结果是:

Wed Dec 20 13:35:58 UTC 2017:由于配置错误导致执行失败:格式错误的Lambda代理响应Wed Dec 20 13:35:58 UTC 2017:方法已完成,状态:502

提前致谢

小智 25

API Gateway期望一个json主体,所以你应该使用这样的东西

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

希望这有助于你前进.