在 aws lambda 中获取请求参数

Posted

技术标签:

【中文标题】在 aws lambda 中获取请求参数【英文标题】:getting request parameter in aws lambda 【发布时间】:2017-01-27 23:25:41 【问题描述】:

我需要从 lambda 函数读取请求参数。iam 在我的 api 网关获取方法上配置正文映射模板,如下所示


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

我的 Lambda 函数代码是

exports.handler = (event, context, callback) => 
    // TODO implement

  var val1 = require('querystring').parse(event.params.val1);
  var val2 = require('querystring').parse(event.params.val2);

    callback(null, 'Hello from Lambda' + val1 +'test'+val2);
;

但是在测试我的 api 方法时,我收到错误 “进程在完成请求之前退出” 并带有日志

TypeError: Cannot read property 'val1' of undefined

与此设置相关的实际问题是什么?

【问题讨论】:

【参考方案1】:

表示event.params未定义。

不应该这样吗?

var val1 = require('querystring').parse(event.val1);
var val2 = require('querystring').parse(event.val2);

【讨论】:

以上是关于在 aws lambda 中获取请求参数的主要内容,如果未能解决你的问题,请参考以下文章

如何在 AWS API Gateway GET 请求中传递查询参数? [复制]

使用 webargs 验证 AWS lambda 中的查询字符串参数和请求正文

AWS Lambda 错误:当 url 参数包含 JSON 数组时,“无法将请求正文解析为 json”

AWS Lambda 内部的 Parameter Store 请求超时

Python3 AWS Lambda-向需要VPN的域发出发布请求

使用nodejs中的AWS Lambda函数上传音频文件