AWS Python Lambda函数JSON格式
我在AWs Lambda中使用以下Python函数: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
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}
改成返回数据
,会怎么样?该死-那很简单,是吧?我觉得有点傻,但谢谢你——它起了很大的作用。