首页 > 解决方案 > 防止图像文件被添加到浏览器缓存

问题描述

我的应用程序将图像文件呈现给用户(用于摄影比赛评判)。它可能会在单个会话期间呈现数千个相当大的文件。为了呈现每个图像,我使用 AJAX 通过 Web 服务获取 URL,然后将其显示为

$("#imgImage").prop('src', resp.URL);

我担心用户浏览器中的存储使用情况。是否将每个图像添加到缓存中,如果是,我该如何防止它?我有元指令

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Expires" content="-1" />

但由于页面本身不会每次都重新加载,我不确定它们是否有效。

标签: htmljqueryimagecaching

解决方案


您需要让服务器将这些标头与提供图像的 HTTP 响应一起发送。在您的页面中,它们仅适用于您的页面,而不适用于图像。

请注意,如果您的页面再次显示相同的图像(用户可以返回吗?我希望能够),客户端将不得不重新下载它。如果它很大,或者它们在计量连接上,那可能并不理想。


推荐阅读