【问题标题】:Define optional query parameters in serverless.yml在 serverless.yml 中定义可选的查询参数
【发布时间】:2020-07-07 11:11:56
【问题描述】:

我对无服务器框架 (sls) 还很陌生,我正在尝试定义一个函数并将其部署到 AWS。

serverless.yml 中声明函数时,我已按照以下 sn-p 行定义了函数的必要参数,但我无法在新函数的http路径:

function-name:
    handler: path/to/js/file.handler
    events:
      - http:
          path: api/v1/resource/{limit}
          method: GET

期望的行为:问题是我无法在路径中声明可选参数。我希望端点能够按预期工作,即使 limit 参数未在 http GET 请求中传递。

注意:我试过path: api/v1/resource/{limit?},但没有成功。

【问题讨论】:

  • 你可以通过event.queryStringParameters在你的handler函数的event参数中获取查询参数。您不必在 serverless.yml 中将它们声明为路径参数。

标签: node.js aws-lambda serverless-framework


【解决方案1】:

您可以为您的 Lambda 添加另一个响应路径。

function-name:
    handler: path/to/js/file.handler
    events:
      - http:
          path: api/v1/resource/{limit}
          method: GET
      - http:
          path: api/v1/resource/
          method: GET

然后,在您的 Lambda 函数中正确处理它。

【讨论】:

    猜你喜欢
    • 2021-06-08
    • 1970-01-01
    • 2018-04-27
    • 1970-01-01
    • 1970-01-01
    • 2015-09-14
    • 1970-01-01
    • 2023-02-16
    • 2020-09-08
    相关资源
    最近更新 更多