在使用AngularJS發出請求(GET)獲取服務端數據,然后再綁定到頁面中,你會發現在IE中總是顯示原來的數據結果。這時候我們就會知道,IE做了緩存。
解決辦法:
我們可以在AngularJS的配置中通過$httpProvider來設置其不緩存。具體如下所示:
1 ngApp.config(function ($httpProvider) { 2 // Initialize get if not there 3 if (!$httpProvider.defaults.headers.get) { 4 $httpProvider.defaults.headers.get = {}; 5 } 6 7 // Enables Request.IsAjaxRequest() in ASP.NET MVC 8 $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest'; 9 10 //禁用IE對ajax的緩存 11 $httpProvider.defaults.headers.get['Cache-Control'] = 'no-cache'; 12 $httpProvider.defaults.headers.get['Pragma'] = 'no-cache'; 13 });