具有许多 lambda 的 AWS API 网关代理

问题描述 投票:0回答:1

我已经使用 AWS API Gateway 相当长一段时间了,上个月我开始使用它,通过代理集成在 Lambda 函数内调用我的 C# ASPNET。 那很好。 然后,我需要另一个具有不同 ASPNET API 的 lambda 函数,为此,我必须使用另一个代理集成创建另一个 API 网关。 我即将达到第四个 lambda。

MyFirstApi, with resources:
    /{proxy+}    ..... pointing to lambda 1

MySecondApi, with resources:
    /{proxy+}    ..... pointing to lambda 2

MyThirdApi, with resources:
    /{proxy+}    ..... pointing to lambda 3

MyFourthApi, with resources:
    /{proxy+}    ..... pointing to lambda 4

我试图猜测是否有一种方法可以拥有一个具有多个资源的 API 网关,每个 lambda 函数一个,每个一个代理集成。 示例:

MySingleApi, with resources:
  /function1/{proxy+}    ..... pointing to lambda 1 
  /function2/{proxy+}    ..... pointing to lambda 2 
  /function3/{proxy+}    ..... pointing to lambda 3 
  /function4/{proxy+}    ..... pointing to lambda 4

我可以创建它们,并将每个函数指向不同的 lambda 函数,但 APIGatewayRequest 对象携带“functionN”字符串作为路径参数的一部分,该字符串未映射到 ASPNET API 控制器/方法路由内部,从而导致 404 错误.

我在这里错过了什么吗?

amazon-web-services api proxy aws-lambda
1个回答
1
投票
  1. 从根路径创建多个资源,无需代理设置。

  2. 在每个资源下使用代理设置注册资源。

我所做的设置如下。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.