先說明一下,當時我使用下面的代碼是沒能解決問題的


<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="0">
<%
response.setHeader("Cache-Control","no-store");
response.setHeader("Pragrma","no-cache");
response.setDateHeader("Expires",-1);
%>
方法一:在后面加參數使得圖片不從緩存中讀取
<script>
document.write("<img src=<%=result.getPhoto()%>"+"?temp="+Date.parse(new Date())+" id='photo' width='120' height='120'/>" );
</script>
document.write("<img src=<%=result.getPhoto()%>"+"?temp="+Date.parse(new Date())+" id='photo' width='120' height='120'/>" );
</script>
方法二:光使用<META HTTP-EQUIV="Pragma" CONTENT="no-cache">是不起作用的,IE仍然會cache數據的。 通常IE在一頁的數據沒有滿32K時它是不會緩存的。
如果把 no-cache 直接放在最前面的話,只要緩存中的數據沒有到32K,當時ie是不會緩存的,但是當讀過了no-cache標志,到了HTML其他部分時,如果數據超過了32K,IE仍然會將數據緩存起來。 這是由于IE分析一個頁面的語法時是從上到下讀取的,正確的方法如下:
<HTML>
<HEAD>
<META HTTP-EQUIV="REFRESH" CONTENT="5">
<TITLE> 標題 </TITLE>
</HEAD>
<BODY>
頁面的其它部分。。。。。
</BODY>
<HEAD>
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
</HEAD>
</HTML>
<HEAD>
<META HTTP-EQUIV="REFRESH" CONTENT="5">
<TITLE> 標題 </TITLE>
</HEAD>
<BODY>
頁面的其它部分。。。。。
</BODY>
<HEAD>
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
</HEAD>
</HTML>