一、页面禁止缓存标签(HTML):
1 <head> 2 <meta http-equiv="PRAGMA" content="NO-CACHE" /> 3 <meta http-equiv="CACHE-CONTROL" content="NO-CACHE" /> 4 <meta http-equiv="EXPIRES" content="0" /> 5 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" /> 6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
二、URL后添加时间戳(JavaScript):
1 url += url.indexOf("?") > 0 ? "&" : "?"; 2 url += "random=" + (new Date()).getTime();
三、URL后添加时间戳(C#):
1 url += url.IndexOf("?") > 0 ? "&" : "?"; 2 url += "random=" + DateTime.Now.ToString("yyyyMMddHHmmss");
四、调用ClearMyTracksByProcess(C#):
1/// <summary> 2 /// 清除文件夹 3 /// </summary> 4 /// <param name="path">文件夹路径</param> 5 static void FolderClear(string path) 6 { 7 System.IO.DirectoryInfo diPath = new System.IO.DirectoryInfo(path); 8 foreach (System.IO.FileInfo fiCurrFile in diPath.GetFiles()) 9 { 10 FileDelete(fiCurrFile.FullName); 11 12 } 13 foreach (System.IO.DirectoryInfo diSubFolder in diPath.GetDirectories()) 14 { 15 FolderClear(diSubFolder.FullName); // Call recursively for all subfolders 16 } 17 } 18 /// <summary> 19 /// 执行命令行 20 /// </summary> 21 /// <param name="cmd"></param> 22 static void RunCmd(string cmd) 23 { 24 ProcessStartInfo p = new ProcessStartInfo(); 25 p.FileName = "cmd.exe"; 26 p.Arguments = "/c " + cmd; 27 p.WindowStyle = ProcessWindowStyle.Hidden; // Use a hidden window 28 Process.Start(p); 29 } 30 /// <summary> 31 /// 删除临时文件 32 /// </summary> 33 public static void CleanTempFiles() 34 { 35 FolderClear(Environment.GetFolderPath(Environment.SpecialFolder.InternetCache)); 36 RunCmd("RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8"); 37 }
此上四法组合起来使用,可有效清除页面缓存。