【问题标题】:Can't access 'event' properties when calling it in Lambda Function in AWS在 AWS 的 Lambda 函数中调用“事件”属性时无法访问它
【发布时间】:2020-09-30 23:26:28
【问题描述】:

我最近构建的 AWS lambda 函数有一个特定问题(在 python 3.8 中)。它应该支持发布请求并将请求正文中的项目放入 DynamoDB 中的表中。

我的 Lambda 函数如下所示:

当我使用 API Gateway 进行测试时,它运行良好,我得到了我的期望。 并且该项目被插入到表中。这是 API-Gateway 测试的响应:

这是我的 API 网关发布方法设置:

但是,当我使用邮递员并尝试发布 JSON 时,我得到了这个关键错误:(注意帖子的 JSON 正文是相同的)。

非常感谢我在这里获得的任何帮助。

编辑:对于那些阅读过以下 cmets 的人。这是我用来返回事件的代码:

【问题讨论】:

  • 在两者上打印事件并查看差异
  • print(json.dumps(event)) 添加到您的 lambda 并检查 CW 记录结果。
  • 在 Postman 中,Content-Type 是否设置为 application/json?发送请求时是否计算 Content-Length?正文是原始 json 吗?
  • @jarmod 同意
  • 所以我得到:“此帐户或区域中不存在日志组。”尝试访问 CW 日志时。分配的角色附加了一个“AWSLambdaBasicExecutionRole”策略。 lambda 的 ARN 在其自己的权限下似乎是正确的。

标签: python amazon-web-services rest aws-api-gateway


【解决方案1】:

所以我相信我解决了这个问题。在 API Gateway 中设置 post 方法时,我只是取消了“使用 lambda 代理集成”框。现在我收到了我想要的作为事件的身体。无论如何,谢谢您的回复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-09
    • 1970-01-01
    • 2022-11-12
    • 1970-01-01
    • 1970-01-01
    • 2016-07-02
    • 2018-06-25
    相关资源
    最近更新 更多