如何使用 Lambda 赋予 HTTP API 或 REST API 不更新的能力?

How to give HTTP API or REST API with Lambda, the ability to not update?

所以我有一个带有以下代码的 Lambda 函数,它由 API(AWS API 网关)触发。

import json

def lambda_handler(event, context):
    testString = "foo"
    if "f" in testString:
        return {
            "statusCode": 200,
            "body": json.dumps(testString)
        }

我用 HTTP API 和 REST API 测试了它。因为条件 returns True,在这两种情况下输出都是 "foo",因为它应该是。但是如果testString突然变成"goo",条件returnsFalse会怎样呢?我希望输出保持原样(不更新),所以它保持 "foo"。但是当这种情况发生时,HTTP API 输出 null,REST API 输出 {"message": "Internal server error"}.

也许我只需要找出下面代码中缺失的部分:

import json

def lambda_handler(event, context):
    testString = "goo"
    if "f" in testString:
        return {
            "statusCode": 200,
            "body": json.dumps(testString)
        }
    else:
        #missing piece: make output not change

这可能是第一次,我已经尝试“创建”APIs tbh。我错过了什么?

I would like the output t remain as it previously was (not update), so it remains "foo"

仅使用 lambda 函数无法做到这一点。您必须在外部存储您之前的输出,例如在DynamoDB。然后你的函数将始终能够查找最后的正确结果,return 它而不是一些随机错误消息或不正确的答案。