解决AngularJS在IE下取数据总是缓存的问题

本文介绍如何在使用AngularJS发出GET请求获取服务端数据时,避免IE浏览器的缓存导致数据不更新的问题。通过调整AngularJS配置,禁用IE对AJAX请求的缓存,确保页面数据实时更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  在使用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 });

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值