documentation表示json应该返回包含正文,标题和状态代码的所有内容。但是,无论出于何种原因,当我在API网关中测试它时,它都会返回格式错误的响应。
这是下面方法的输出。
" {\" body \":200,\" header \":{\" Content-type \": \" application / json \"},\" statusCode \":200}"
def addnumbers(message, context):
result = message['num1'] + 1
print(result)
resp = {
"statusCode": 200,
"body": result,
"headers": { "Content-type": "application/json"}
}
return (json.dumps(resp))
我目前正在传递num1 = 1并且它没有提供任何更好的错误消息。任何指导都将不胜感激。
答案 0 :(得分:1)
好的,请回答。
确保您在API中需要的任何资源上启用了代理集成。
现在去你的lambda。看看我之前是如何尝试传入num1.I试图从"事件"或者消息。这是我绊倒的地方。另请注意(you can't do a get with a body) 相反,lambda的输入应该是这样的。
{ " queryStringParameters":{ "输入":"无论输入是什么,你都希望lambda测试" } }
现在我们已经为lambda配置了测试,我们需要对lambda本身进行编码。
我把这段代码放在:
def lambda_handler(event,context):
number = "Hello, " + event['queryStringParameters']['input']
out = {}
out['statusCode'] = 200
out['body'] = number
return (out)
现在,如果你测试它应该没问题。
返回API网关 在"查询字符串"部分输入input = randomname
它现在应该以hello,randomname
返回