如何使用GET请求将参数传递给AWS Lambda函数



假设我想在从Api网关端点向Lambda函数发出GET请求时在URL字符串中传递val1和val2:

https://xyz.execute-api.amazonaws.com/prod/test?val1=5&val2=10

我有一个简单的函数,它将两个输入值val1和val2相加:

def lambda_handler(event, context):
    # How do I get at val1 and val2??
    return {'result': val1 + val2}

我已经将val1和val2添加到AWS API网关上方法请求的URL查询字符串参数中。但是如何在函数中访问它们?

在API网关的方法请求部分中定义查询字符串参数后,您需要在[方法执行

方法执行部分,选择映射模板,然后单击添加映射模板。为内容类型输入application/json,然后创建一个如下所示的映射模板:

{
    "va1": "$input.params('val1')",
    "val2": "$input.params('val2')"
}

这将告诉API网关获取名为val1val2的输入参数(在路径上传递,或在标头中传递,或是在查询参数中传递),并将它们作为val1val2发送到事件数据中的Lambda函数。

所有信息都可以从Event对象中检索。

例如:变量foo的值可以从事件中检索为:event["foo"]

相关内容

  • 没有找到相关文章

最新更新