我正在编写一个将 HTML 存储在数据库中的网络应用程序。该 HTML 将具有指向图像的标签。我正在尝试一种方法来抽象图像的实际位置,这样我就可以将它们换掉,而不必更新 HTML 中的文本。这是我的意思的一个例子:
<p>
asdf asdf <img src="img.png" /> asdf asdf
asdf asdf <img src="folderXYZ/img.png" /> asdf asdf
</p>
理想情况下,这里的图像将与一些抽象的“根”相关。我希望我的 webapp 在运行时用实际的 url 填充图像的 SRC 值。例如,如果我从 Amazon S3 提供服务,例如http://s3.amazonaws.com/xxxxx/xxxxx/folderXYZ/img.png
,或者如果我明天更改它,它可能来自我的本地服务器http://example.com/resources/folderXYZ/img.png
。
我考虑过的一件事是使用正则表达式来提取他的 IMG 标签并对其进行操作。另一个是组成我自己的语法(可能类似于{{IMAGE /folderXYZ/img.png}}
)。我不知道这在功能上会有什么不同,但这似乎是个好主意,因为这些图像不一定与同一台服务器相关。
我想到的另一个想法是,我可以在我的 webapp 中查找实际资源并从那个抽象的 SRC 位置流式传输资源,使我的 webapp 成为资源的一种“代理”(无论它们存储在哪里)。从灵活性的角度来看,这似乎很棒(客户端不必根据后端资源位置查看不同的 URL),但部分是不可取的,因为它会给我的服务器带来额外的负载。
只是在寻找建议。谢谢!