使用 AWS Lambda 和 API Gateway 来提供静态 javascript?

Jen*_*enS 5 api lambda amazon-s3 node.js aws-api-gateway

我正在编写一个第三方小部件,它执行 javascript 客户端以向用户站点添加一个按钮。本质上,用户将在他们的网站上包含一个标签,其中包含我的小部件的路径。该路径的 URL 将包括调用小部件的特定用户的 app_id。例如

<script src="www.widget.com/widget/{USER_ID}">
Run Code Online (Sandbox Code Playgroud)

我希望能够使用 AWS Lambda 和 API Gateway 进行一些快速身份验证,允许用户下载小部件并提供 javascript 内容。这在 Express.js 中使用 res.sendFile 之类的东西非常简单,但 API Gateway 似乎不支持发送文件。有什么方法可以使用 API Gateway 快速为 javascript 提供服务,而不必对整个文件进行字符串化?

Abh*_*aja 2

您可以设置 api 网关来代理对托管文件的 s3 的所有请求(S3 代理示例)。否则,您可以设置Http 代理集成,然后运行为整个文件提供服务的后端 http 服务器。要对请求执行身份验证,您可以作为自定义授权者执行 lambda 函数

如果您有 lambda 集成类型,唯一的办法就是使用回调lambda 文档在响应中返回整个文件。