AWS Python Lambda函数JSON格式

AWS Python Lambda函数JSON格式,python,json,aws-lambda,Python,Json,Aws Lambda,我在AWs Lambda中使用以下Python函数: import json import boto3 from boto3.dynamodb.conditions import Key, Attr #always start with the lambda_handler def lambda_handler(event, context): # make the connection to dynamodb dynamodb = boto3.resource('dynam

我在AWs Lambda中使用以下Python函数:

import json
import boto3
from boto3.dynamodb.conditions import Key, Attr

#always start with the lambda_handler
def lambda_handler(event, context):

    # make the connection to dynamodb
    dynamodb = boto3.resource('dynamodb')

    # select the table
    table = dynamodb.Table("test")

    response = table.query(
    KeyConditionExpression=Key('coursename').eq('intro')
    )
    data = response['Items']
    return {'body' : data}
它输出以下JSON-注意到“body”键了吗?当我尝试在我的应用程序中使用响应时,这会产生一些问题,因为我必须引用“body”作为响应的一部分

来自Lambda的JSON响应

{
    "body": [{
        "coursename": "introto1",
        "course-lesson-name": "Welcome to One! "
    }, {
        "coursename": "introto2",
        "course-lesson-name": "What is One?"
    }, {
        "coursename": "introto2",
        "course-lesson-name": "What Can We do with One?"
    }]
}
这是我需要Python函数输出的JSON格式。这可以在AWS Lambda中完成吗

我需要的JSON格式:

[{
    "coursename": "introto1",
    "course-lesson-name": "Welcome to One! "
}, {
    "coursename": "introto2",
    "course-lesson-name": "What is One?"
}, {
    "coursename": "introto2",
    "course-lesson-name": "What Can We do with One?"
}]

响应采用这种格式,因为您要显式地将其包装在带有
body
属性的JSON对象中。将
return{'body':data}
更改为
return data

响应采用该格式,因为您将它显式包装在带有
body
属性的JSON对象中。将
return{'body':data}
更改为
return data

如果将
return{'body':data}
更改为
return data
,会发生什么?当-很简单,是吗?我觉得有点傻,但是谢谢-它起了很大的作用。如果你把
返回{'body':data}
改成
返回数据
,会怎么样?该死-那很简单,是吧?我觉得有点傻,但谢谢你——它起了很大的作用。