【问题标题】:Lambda Check if method is POSTLambda 检查方法是否为 POST
【发布时间】:2020-11-11 13:40:08
【问题描述】:

我正在定义一个用户视图。它做这样的事情-> 如果方法是 GET -> Lambda 在后端与 RDS 交互并返回所有 USER 视图。

GET /list-views/users/user_id/list_object_types/list_object_type_id

如果方法是 Create -> 将创建一个新用户并将其添加到 RDS。

POST /list-views/create

如果方法是删除 -> 一个用户将被删除。

PATCH /list-views/id

我可以通过像这样在 lambda 中创建函数来做到这一点->

def fetch_thing(method):
    if method == "POST":
        API_ENDPOINT = ""
        dataa={"type" : "abc", "price" : 123.11}

        xz = requests.post(url=API_ENDPOINT, json = dataa)
        re=xz.json()


    elif method == "GET":
        r11 = requests.get(url="")
        re = r11.json()

    return re

但是当我尝试将它与 Lambda 集成时,它会给出错误“必须定义集成” 我相信这是因为我的主要 lambda_handler-> *注意这是我一直试图让它运行的东西,直到这里提到它,它不会让我将 lambda 与 API 集成。

def lambda_handler(event, context):

if event['queryStringParameters']['paramName'] == "POST":
    return "hi"

任何建议都会非常有帮助,目标是每当新用户创建视图时,lambda 更新 RDS 表,我通过检查方法请求然后通过 API 端点将其提交给前端开发人员来做到这一点

【问题讨论】:

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


【解决方案1】:

可以使用事件参数的httpMethod属性

if (event.httpMethod === 'POST') {
    //...
}

【讨论】:

    猜你喜欢
    • 2021-08-05
    • 1970-01-01
    • 2014-11-23
    • 1970-01-01
    • 2014-07-04
    • 1970-01-01
    • 2011-01-17
    • 2018-12-01
    • 1970-01-01
    相关资源
    最近更新 更多