我很想知道人们如何解决这个问题,或者是否可以使用重定向来完成。
在网站上,常见问题是有一个图标来表示资源(例如用户),如果此资源不存在,则使用默认图标。
现在说我想在标记中解决这个问题然后它非常简单:
# Default for user without an icon
<img src="/images/default.png" alt="theozaurus">
# For user with an icon
<img src="/images/users/theozaurus.png" alt="theozaurus">
然而,在某些情况下,这可能会很痛苦:
因此解决方案显而易见:
<img src="/images/users/theozaurus.png" alt="theozaurus">
然后,应用程序可以返回默认图标,也可以返回已上传的图标。这是低效的,虽然好像我有一个包含100个这些图标的页面,其中90%是默认图标,我有效地下载了相同的图像90次,只是因为我不想处理预渲染或动态生成标记问题。
如果我使用重定向解决了这个问题,它会工作吗(理智) - 并且缓存仍然有效。
例如,GET
到/images/users/theozaurus.png
可能会返回302 /images/default.png
。然后,当theozaurus上传图标时,它将返回200 <unique icon>
浏览器会在重定向上获得缓存吗?我在这里错过了任何陷阱吗?