【问题标题】:Recommended way to handle REST parameters in Spring cloud functionSpring cloud函数中处理REST参数的推荐方式
【发布时间】:2020-12-20 12:57:52
【问题描述】:

我非常喜欢 Spring 云功能将业务逻辑与运行时目标(本地或云)解耦并使其易于与无服务器提供商集成的方式。

我计划在 API 网关后面使用 SCF 和 AWS Lambda 来设计系统的后端。

但是,我并不完全清楚在 Spring 云函数中处理 REST 相关参数(例如查询参数、标题、路径等)的推荐方法是什么。 根据我们的初步分析,我们可以得出两种可能的方法:

  1. 在 API Gateway 中启用“Lambda 代理集成”时,查询参数和其他信息可作为 SCF 内的消息标头使用。
  2. 我们可以使用 API Gateway 中的“映射模板”将所有需要的信息映射到 JSON 正文中,并反序列化为 POJO,以将输入直接输入 SCF。 这样,SCF 就无需担心如何将所需数据传递给 API。

实现此目的的推荐方法是什么?我们是否缺少一些能够以更好的方式做到这一点的东西?

【问题讨论】:

  • 嘿 Saikat,我在同一条船上,想知道您是否已经设法使用 SCF 构建 REST API,如果您有参考 repo/文章以构建这种方法,那将非常有帮助
  • @RakeshMothukuri 我没有找到合适的文章。但我实施了 Dave Syer 建议的答案。效果很好。
  • 我明白了,不用担心。谢谢:)

标签: rest aws-lambda aws-api-gateway spring-cloud spring-cloud-function


【解决方案1】:

我认为您没有遗漏任何功能,除了使用复合函数可能也很方便 - 例如marshal|transform,其中marshal 是Function<Message<?>, ?>,transform 是业务逻辑。 marshal 函数可以是通用的(并转换为某种规范形式),并在共享库中作为自动配置提供(例如)。

【讨论】:

    猜你喜欢
    • 2023-04-10
    • 2012-03-14
    • 2020-06-11
    • 2019-12-15
    • 2013-03-10
    • 1970-01-01
    • 2019-01-15
    • 2021-12-22
    • 2017-07-15
    相关资源
    最近更新 更多