从亚马逊的 s3 加载一个 html 元素

问题描述

我知道可以通过 src 属性引用存储在 s3 中的图像,但是如果我想加载更复杂的内容,例如静态 html 的一部分,该怎么办。有什么方法可以简单地将 html 拉下来以供使用/插入到 DOM 中(我想类似于休息调用)?

我想在这种情况下 css 会内联,但这将是下一个要面对的挑战。

(作为参考,我在一个 Angular 框架中尝试实现页面的一部分,该部分将通过存储在 s3 中的代码呈现,因此无需部署代码库即可轻松更新)

解决方法

一个可能的解决方案是使用一个 API 来返回一个 JSON 格式的文件(只是一个粗略的假设):

{htmlCodeAlongWithStyle:'Code in string'}

这里我们没有创建单独的样式表,而是使用单个 HTML 组件的 style 属性。

现在要嵌入代码,只需创建一个 div 标签并将 innerHTML 设置为 json 的 htmlCodeAlongWithStyle 属性的值。 示例:

<div [innerHTML]='variableStoringAPIResponse.htmlCodeAlongWithStyle'></div>
,

我强烈建议您看看 CDNs 是否适合您的用例:

由于您使用的是 Amazon S3,我建议您查看 Amazon Cloudfront。但是您还有许多其他选择 - 包括直接从您的 S3 实例提供静态内容。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...