AngularJS在IE下取數據老是緩存問題的解決方法

本文實例講述了AngularJS在IE下取數據老是緩存問題解決方法。分享給你們供你們參考,具體以下:ajax

問題:緩存

在使用AngularJS發出請求(GET)獲取服務端數據,而後再綁定到頁面中,你會發如今IE中老是顯示原來的數據結果。這時候咱們就會知道,IE作了緩存。dom

解決辦法:ide

咱們能夠在AngularJS的配置中經過$httpProvider來設置其不緩存。具體以下所示:code

 

ngApp.config(function ($httpProvider) {
  // Initialize get if not there
  if (!$httpProvider.defaults.headers.get) {
    $httpProvider.defaults.headers.get = {};
  }
  // Enables Request.IsAjaxRequest() in ASP.NET MVC
  $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest';
  //禁用IE對ajax的緩存
  $httpProvider.defaults.headers.get['Cache-Control'] = 'no-cache';
  $httpProvider.defaults.headers.get['Pragma'] = 'no-cache';
});

 

針對ie,有時候緩存設置仍是會出現問題,針對get的ajax請求咱們能夠加入參數設置get

 

var randomLogin=new Date().getTime()*Math.random();//參數隨機數,避免緩存
$http.get("/getAccount?"+randomLogin).then(function (response) {
				
}, function () {
				
});
相關文章
相關標籤/搜索