Amazon web services 什么时候应该使用AWS API网关代理集成?

Amazon web services 什么时候应该使用AWS API网关代理集成?,amazon-web-services,aws-lambda,aws-api-gateway,Amazon Web Services,Aws Lambda,Aws Api Gateway,我是AWS的新手,我正在设置一个API网关,它将调用一个Lambda函数,该函数将数据发布到一个Kinesis流。API网关Post请求将包含几个请求参数 我正在阅读AWS文档,我看到了访问请求参数的两个选项 1) 通过$input变量 2) 通过代理集成 您能解释一下代理集成与使用输入变量的用例吗 基本上,如果您控制后端集成接口(就像使用Lambda函数一样),您应该使用“代理”集成,因为在Lambda函数代码中操作数据要比在API网关转换中容易得多 如果您不控制后端集成接口(例如,直接控制K

我是AWS的新手,我正在设置一个API网关,它将调用一个Lambda函数,该函数将数据发布到一个Kinesis流。API网关Post请求将包含几个请求参数

我正在阅读AWS文档,我看到了访问请求参数的两个选项

1) 通过$input变量

2) 通过代理集成


您能解释一下代理集成与使用输入变量的用例吗

基本上,如果您控制后端集成接口(就像使用Lambda函数一样),您应该使用“代理”集成,因为在Lambda函数代码中操作数据要比在API网关转换中容易得多

如果您不控制后端集成接口(例如,直接控制Kinesis或遗留HTTP端点),则可以使用映射模板在客户端和后端集成之间转换数据


这有意义吗?对于使用Lambda的用例,应该使用代理。如果您想尝试将Kinesis直接用作后端,则必须使用映射模板来构造对Kinesis的正确请求。

基本上,如果您控制后端集成接口(就像使用Lambda函数一样)您应该使用“代理”集成,因为在Lambda函数代码中操作数据要比在API网关转换中容易得多

如果您不控制后端集成接口(例如,直接控制Kinesis或遗留HTTP端点),则可以使用映射模板在客户端和后端集成之间转换数据


这有意义吗?对于使用Lambda的用例,应该使用代理。如果您想尝试将Kinesis直接用作后端,则必须使用映射模板来构造对Kinesis的正确请求。

谢谢,这很有意义。当使用代理向Lambda函数传递请求参数时,如何单独访问函数中的每个参数?我正在看一个示例,其中我们得到一个单独的参数,如event.pathParameters.proxy。但是这将把所有的参数放在一起。或者我需要用额外的逻辑在lambda端解析这个结果吗?如果你使用像{proxy+}这样的“贪婪”路径参数,那么你只需要得到整个路径作为参数值。您可以在函数中解析它。谢谢@jackkohn,使用split(“/”)方法进行拆分非常简单谢谢,这很有意义。当使用代理向Lambda函数传递请求参数时,如何单独访问函数中的每个参数?我正在看一个示例,其中我们得到一个单独的参数,如event.pathParameters.proxy。但是这将把所有的参数放在一起。或者我需要用额外的逻辑在lambda端解析这个结果吗?如果你使用像{proxy+}这样的“贪婪”路径参数,那么你只需要得到整个路径作为参数值。您可以在函数中解析它。谢谢@jackkohn,使用split(“/”)方法进行拆分非常容易