首页 > 解决方案 > CloudFormation 脚本从 API Gateway 和 Lambda 返回二进制文件

问题描述

StackOverflow 上已经有很多关于从 API Gateway 和 Lambda 返回二进制内容的信息,但在详细的有保证的工作解决方案方面却很少。在追逐我的尾巴几天之后,我很想停止尝试解决这个问题!

我所追求的是创建 API 网关和 Lambda 的 CloudFormation 脚本。对 API Gateway 上资源的 GET 调用应返回由 Lambda 创建的二进制 PNG。Lambda 代码应内联在 CloudFormation 脚本中,以便解决方案是独立的。我的建议是 Lambda 总是返回一个 PNG(一个 12x12 像素的向下箭头),其 base 64 编码为:

iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAMAAABhq6zVAAAABlBMVEX///8AAABVwtN+AAAAF0lEQVQImWNgoAJghABkHrIcskpSjAUABSYAEabdEBsAAAAASUVORK5CYII=

请注意,我有一个有效的 CloudFormation 脚本,用于通过 API Gateway 和 Lambda 使用 HTTP 重定向从 S3 返回二进制文件,但我更愿意直接执行此操作,而不需要将二进制文件写入 S3 的开销。

CloudFormation 脚本将对这个问题做出巨大贡献,因为它易于部署和验证,并且可以轻松修改,以便开发人员可以快速生成生产就绪的基础架构即代码工件。

对此非常贪婪,我希望看到这样的常见问题由一个活跃的 AWS 开发团队解决并公开发布(比如在AWS Samples上)。

提前致谢!

标签: amazon-web-servicesaws-lambdaamazon-cloudformationapi-gateway

解决方案


推荐阅读