วิธีที่ 1: เพิ่มส่วนหัว If-Modified-Since
เมื่อมีการเรียก xmlhttp หลายครั้ง มันจะแสดงหน้าที่แคชไว้เสมอ ลองเพิ่มส่วนหัว http ที่เกี่ยวข้องใน php หรือ asp เพื่อไม่ให้แคชอย่างชัดเจน แต่ไม่มีผลใดๆ!!
ในที่สุดฉันก็พบวิธีส่งส่วนหัว If-Modified-Since หลังจาก xmlhttp.open รหัสมีดังนี้
xmlhttp.setRequestHeader('ถ้า-แก้ไข-ตั้งแต่', '0');
xmlHttp.onreadystatechange = สถานะเปลี่ยนแปลง;
xmlHttp.open("GET", url, true);
xmlHttp.setRequestHeader('ถ้า-แก้ไข-ตั้งแต่', '0');
xmlHttp.send(null);
วิธีที่ 2: เพิ่มพารามิเตอร์ที่เปลี่ยนแปลงหลัง URL คำขอ
เนื่องจาก IE แคชคำขอ URL เดียวกันตามค่าเริ่มต้น URL จะถูกเพิ่มด้วยพารามิเตอร์ที่ไม่ซ้ำกันเป็นความแตกต่าง การรักษา URL ของแต่ละคำขอให้แตกต่างกันสามารถข้ามปัญหาแคชของ IE ได้
js: URL = "http://host/a.php"+"?"+Math.random();
vbs: URL = "http://host/a.php"&"?"&Timer()
//var url = "ResponseContentPageScore.aspx?key=" + Math.round(Math.random() * 100) + "&HotelCD=" + inputContent;
var url = "ResponseContentPageScore.aspx?key=" + วันที่ใหม่().getTime() + "&HotelCD=" + inputContent;