【问题标题】:AWS API Gateway call Lambda versions by header informationAWS API Gateway 按标头信息调用 Lambda 版本
【发布时间】:2019-06-23 17:28:47
【问题描述】:

我已经阅读了很多关于将 AWS API Gateway 与 Lambda 函数集成的 API 版本控制提示。但他们中的大多数使用 URL 来提供版本号,例如/v1/orders

但我不想使用这种模式。相反,我想评估标题信息以检索请求的版本。

我想做的是:

  • 配置 API 网关(通过 CloudFormation)以便仅定义 /orders
  • 使用请求映射来读取标头“版本”
  • 调用 lambda 函数,例如getOrders:v1 如果 'version' 标头设置为 'v1'

这可以通过 AWS Api Gateway 实现吗?或者有没有类似的方法不使用 URL 来区分版本?

我看到了使用阶段变量的解决方案: https://dzone.com/articles/api-versioning-approach-with-aws-api-gateway

关于这种方法:标题是否有与${stageVariables.v1fn} 等效的方法?例如。 ${request.headers.version}?

【问题讨论】:

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


    【解决方案1】:

    一种可能的解决方案是使用 lambda 将请求分派给相关的 lambda,遗憾的是 API Gateway 仅支持每个端点和方法一个 lambda

    【讨论】:

    • 我编辑了我的条目,因为可以使用 ${stageVariables...} 作为 Lambda 函数名称。实际上,我需要相同的内容,但对于 HTTP 标头而不是暂存变量 :-)
    • 我也需要这样做,你找到解决办法了吗?
    • @Johnny90 你找到解决办法了吗?
    猜你喜欢
    • 2017-05-01
    • 2017-12-07
    • 2019-07-09
    • 1970-01-01
    • 1970-01-01
    • 2020-10-01
    • 2015-10-01
    • 2022-01-13
    • 1970-01-01
    相关资源
    最近更新 更多