如何以编程方式从浏览器的缓存中删除旧的applet?

Ume*_*yat 2 java applet caching

有没有办法从浏览器的缓存中删除旧版本的applet?我已经尝试过首先阻止缓存问题的事情是:

1-要在HTTP响应头中设置"no-cache",我将以下脚本放在我的jsp顶部:

<% 
if (request.getProtocol().compareTo("HTTP/1.0") == 0) {
            response.setHeader("Pragma", "no-cache");
        } else if (request.getProtocol().compareTo("HTTP/1.1") == 0) {
            response.setHeader("Cache-Control", "no-cache");
        }
        response.setDateHeader("Expires", 0);
%>
Run Code Online (Sandbox Code Playgroud)

2-虽然部署applet 'cache_option'设置为'no'

但没有用.我现在想知道是否有办法从缓存中以编程方式删除此applet jar文件?

[UPDATE]

在我的情况下,每次为applet提供一个唯一的url看起来不是一个好主意.因为,在我的情况下,applet在一段时间后重新加载(刷新)自己(比如在午夜,使用Timer),点击一个网址

applet.getAppletContext().showDocument(url); 
Run Code Online (Sandbox Code Playgroud)

将新网址传递给applet会很困难

mic*_*667 7

您在其他问题上得到的答案也适用于此:每次为您的applet提供一个唯一的URL.这不是幽默,因为很多人都在使用这种技术,它会解决你的问题.

  • 您只需在URL的末尾添加一些未被服务器使用的随机参数,例如`?my_parameter = 12345`,其中参数的值每次都会更改.这可以防止缓存,因为浏览器无法知道参数实际上是未使用的,实际上将再次加载相同的资源. (2认同)