您认为在AWS API Gateway中使用和不使用代理功能的Lambda集成的优点和缺点是什么(更具体地说,在使用无服务器框架时)?这是我现在的想法:
Lambda与代理集成
- Pro:人们可以快速进行原型设计和编码,而无需担心所有必需的配置细节(并重新发明一些轮子,如通用模板映射等).
- Pro:返回任何状态代码和自定义标题非常容易,同时还有一种通用的方法来读取请求的正文,标题和参数.
- Con:一切都在代码中完成,因此自动生成文档有点困难.依赖关系(标题,模型,返回的状态代码)在代码中"隐藏".
没有代理的Lambda集成
- Con:需要更多的工作来设置它,并且这种配置可能在不同的资源中重复.
- Pro:它允许人们分离lambda接收和返回的内容,以及如何将其映射到不同的HTTP状态代码,标头和有效负载.
- Pro:非常有用,因为它预先规定了它返回的内容,以及它在标题和有效负载方面的要求.
- Pro:从长远来看,设置所有内容时的艰苦工作非常有用,因为可以将所有内容导出到Swagger,以便其他人可以使用它为它生成不同的SDK.
你的想法是什么?您通常使用Lambda Proxy还是普通的Lambda集成?你喜欢什么,为什么?
编辑:到目前为止,我倾向于总是选择不使用代理功能,因为提到的原因(解耦和说明依赖关系 - 标题,状态代码等 - 预先).