瀏覽器緩存對jsp,servlet來說都有時候是很致命的。以前用AJAX實現一個進度條,每隔1秒向服務器詢問一次進度,服務器返回當前的百分比,就一個數字。開始的時候沒有禁止緩存,結果進度條老是不動。我在自己的電腦上測試還沒發現這個問題,因為我在internet選項了選擇了“每次訪問此頁時檢查”,而默認選項是“自動”,其實就是允許緩存。禁止緩存可以在HTML中寫,也可以在http header里面寫,但對于非HTML頁面,就只有后面那種選擇了,在servlet里可以這樣寫:
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires",0);
?必須三個都寫上才能應付各種瀏覽器。似乎大小寫敏感(不確定,但上面這種肯定適用于IE 5,6)。還有Expires那個值有人說是-1。