我正在为一所大学开发JSP Web 应用程序,用户页面中显示人员图片。
用户注销后如何从网络浏览器缓存中清除这张图片?
使用 JSP 或 JavaScript
那是不可能的。最好的选择是完全禁用相关资源的缓存。创建一个filter https://stackoverflow.com/tags/servlet-filters/info它执行以下工作doFilter()
method.
HttpServletResponse hsr = (HttpServletResponse) response;
hsr.setHeader("Cache-Control", "no-cache,no-store,must-revalidate");
hsr.setHeader("Pragma", "no-cache");
hsr.setDateHeader("Expires", 0);
chain.doFilter(request, response);
并将其映射到覆盖感兴趣图像的 URL 模式上。
Edit: if you actually不关心浏览器缓存中存在的图像,但您的具体问题是不同的登录用户基本上使用相同的图像 URL,因为它是由某些 servlet 动态提供的,那么您也可以通过给每个唯一的用户唯一的图像 URL。您可以通过将用户 ID 作为请求参数附加到图像 URL 或将其包含在图像的路径中来实现此目的。
<img src="profileimage?id=${user.id}" />
or
<img src="profileimage/${user.id}" />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)