麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

IE下Ajax緩存問題的快速解決方法(get方式)

2019-11-20 21:17:13
字體:
來源:轉載
供稿:網友

折騰了半天,程序中使用jquery的load方法進行請求,很奇怪為啥第二次無法發送請求。百度了一把,誰知load是用get方式進行請求的,因此IE瀏覽器對

其進行緩存了。網上搜了很多解決方案,一大把,下面是我認為比較全面的解決方案。主要分為客戶端解決和服務端解決。

1.客戶端解決方案
IE訪問策略:Internet選項--瀏覽歷史記錄--設置-- Internet 臨時文件的選項改為每次訪問網頁時也可以

1: 在AJAX請求的頁面后加個隨機函數,我們可以使用隨機時間函數

在javascript發送的URL后加上t=Math.random()
例如這樣:URL+"&"+"t="+Math.random();或者new Date();

2: 在XMLHttpRequest發送請求之前加上XMLHttpRequest.setRequestHeader("If-Modified-Since","0")

一般情況下,這里的XMLHttpRequest不會直接使用
你應該可以找到這樣的代碼
XXXXX.send(YYYYYY);
那么,就把它變成
XXXXX.setRequestHeader("If-Modified-Since","0");
XXXXX.send(YYYYYY);

實踐證明,兩種方法都非常有效。
1、在服務端加 header("Cache-Control: no-cache, must-revalidate");
2、在ajax發送請求前加上 xmlHttpRequest.setRequestHeader("If-Modified-Since","0");
3、在ajax發送請求前加上 xmlHttpRequest.setRequestHeader("Cache-Control","no-cache");
4、在 Ajax 的 URL 參數后加上 "?fresh=" + Math.random(); //當然這里參數 fresh 可以任意取了
5、第四種方法和第三種類似,在 URL 參數后加上 "?timestamp=" + new Date().getTime(); //推薦使用這種方式
6、用POST替代GET:不推薦


2.服務器端解決方案:

以Struts2為例:
Struts2 Server端用法

Xml代碼

復制代碼 代碼如下:

<package name="json-nocache" extends="json-default">
 <interceptors>
  <interceptor name="cachingHeadersInterceptor" class="com.ssa.pct.web.interceptor.CachingHeaderInterceptor" />
  <interceptor-stack name="defaultSecurityStack">
   <interceptor-ref name="defaultStack" />
   <interceptor-ref name="cachingHeadersInterceptor" />
  </interceptor-stack>
 </interceptors>

 <default-interceptor-ref name="defaultSecurityStack" />
</package>

Java代碼
復制代碼 代碼如下:

public class CachingHeaderInterceptor extends AbstractInterceptor {

 private static final long serialVersionUID = 1L;

 public String intercept(ActionInvocation invocation) throws Exception {
  ActionContext context = invocation.getInvocationContext();
  HttpServletResponse response = (HttpServletResponse) context.get(StrutsStatics.HTTP_RESPONSE);
  if (response != null) {
   response.setHeader("Cache-Control", "no-cache");
   response.setHeader("Pragma", "no-cache");
   response.setHeader("Expires", "-1");
  }
  return invocation.invoke();
 }

}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中文字幕欧美亚洲 | 91精品国产日韩91久久久久久360 | 国产精品久久久av | 精品免费国产一区二区三区 | 欧美一区二区三区免费观看 | 狠狠干天天 | 国产精品刺激对白麻豆99 | 一级毛片手机在线观看 | 精品一区二区在线观看视频 | 国产韩国精品一区二区三区久久 | 一级毛片播放 | 亚洲第一视频在线 | 亚洲一区二区成人 | 在线成人一区二区 | 久久国产精品久久久久久久久久 | 色网站免费观看 | 99seav| 国产免费小视频在线观看 | 免费日本一区二区 | 本站只有精品 | 欧美大片一级毛片 | 亚洲码无人客一区二区三区 | 成人在线观看免费观看 | 国产精品久久久久久久久粉嫩 | 精品成人网 | 国产精品久久久久久久久久东京 | 久久久精品视频免费看 | 午夜人体 | 99最新地址| 成人免费观看49www在线观看 | 欧美乱淫 | 黄色免费播放网站 | 亚洲成人精品一区二区 | 天天碰天天操 | 女人解衣喂奶电影 | 国产永久免费观看 | 青青草免费观看 | 久草成人在线 | 国产九色视频在线观看 | 久精品久久 | 精品一区二区三区四区在线 |