我在AWS中有一个API网关,它调用一个返回一些html的lambda函数。 然后,该 html 会在屏幕上正确呈现,但不包含任何样式或 js 文件。 我如何将这些也提供给客户? 有没有比在 API 网关上创建/js 和/css GET 端点更好的方法来获取这些文件? 我希望我可以将它们存储在 S3 中,然后它们会从那里自动加载。
存储在 S3 上,并启用 S3 静态网站托管。然后在 HTML 中包含指向这些资产的正确 URL。
我输入了我想包含在html中的每个js/css文件的确切地址。 您需要使用 https 地址,而不是存储桶的 http 地址。 每个文件都有自己的https地址,可以按照上面的标记B的说明找到。 值得注意的是,通过 AWS 管理控制台,导航到 S3 存储桶中的文件,单击右上角的"属性"按钮,复制"链接"字段,然后将其发布到 html 文件中(在我的情况下,该文件也托管在 S3 中)。 HTML 看起来像这样:
<link href="https://s3-us-west-2.amazonaws.com/my-bucket-name/css/bootstrap.min.css" rel="stylesheet">
我没有在存储桶上启用静态网站托管。 我没有任何允许从特定主机读取的 CORS 权限。