【问题标题】:How do I access a POST parameter in Node js AWS Lambda with API Gateway integration?如何通过 API Gateway 集成访问 Node js AWS Lambda 中的 POST 参数?
【发布时间】:2018-08-24 02:08:52
【问题描述】:

我知道如何在与 API Gateway 集成的 Node js Lambda 中访问 GET 字符串变量:

 event["queryStringParameters"]["variable_name"]

访问 POST 变量的等价物是什么?

【问题讨论】:

    标签: node.js aws-lambda


    【解决方案1】:

    使用下面的

    if (event.body !== null && event.body !== undefined) {
            let body = JSON.parse(event.body) //use in case of JSON body
            //your code
    }
    

    AWS Documentation

    【讨论】:

    • 我不确定为什么这个答案被否决,但它是正确的。当您在 Lambda 处理程序中从 API Gateway 收到 POST 时,Lambda 事件包含一个名为 body 的字段,其中包含 POST 正文的 JSON 字符串表示形式。您可以将 JSON 解析为一个对象,并将您的 POST 变量作为主体对象中的键访问。
    • 谢谢。 Json 解析对我不起作用,但其余的让我走上了正轨
    • @jaimerr 您需要确保您的正文在 json 格式中有效
    • 您的身体将是您发布的任何内容。如果您发布多部分表单数据,JSON 解析将会失败。这可能就是它被否决的原因。
    • @PreetSaxena 上面的代码示例适用于发布的正文为 JSON 格式的情况。您可以了解多部分数据here
    猜你喜欢
    • 2019-10-10
    • 2017-12-16
    • 1970-01-01
    • 2017-04-24
    • 2018-05-04
    • 2022-08-16
    • 2020-06-19
    • 2019-06-04
    • 1970-01-01
    相关资源
    最近更新 更多