本文实例讲述了AngularJS在IE下取数据总是缓存问题解决方法。分享给大家供大家参考,具体如下:
问题:
在使用AngularJS发出请求(GET)获取服务端数据,然后再绑定到页面中,你会发现在IE中总是显示原来的数据结果。这时候我们就会知道,IE做了缓存。
解决办法:
我们可以在AngularJS的配置中通过$httpProvider来设置其不缓存。具体如下所示:
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'; });
希望本文所述对大家AngularJS程序设计有所帮助。
本文向大家介绍Jquery $.getJSON 在IE下的缓存问题解决方法,包括了Jquery $.getJSON 在IE下的缓存问题解决方法的使用技巧和注意事项,需要的朋友参考一下 在工作中主页实现Ztree Ztree的数据是后台返回的JSON对象 因为树是固定的所以每次刷新树 $.getJSON 的url都是相同的 问题来了 我修改 或者 新增树节点 然后刷新tree IE竟然毫无变化 在其
本文向大家介绍IE9下Ajax无法刷新数据的缓存问题解决方法,包括了IE9下Ajax无法刷新数据的缓存问题解决方法的使用技巧和注意事项,需要的朋友参考一下 使用jQuery的getJSON从后台定时获取数据并刷新界面,使用以下方法时,在Chrome,Firefox下没问题,但在IE9下却无法刷新数据 原因是,在IE9下,进行Ajax请求时,若与之前请求相同,则不会再从浏览器获取数据,而是直接从本地
问题内容: 从IE发送的所有ajax调用都被Angular缓存,我为随后的所有调用获取a 。尽管请求是相同的,但在我的情况下响应将是不同的。我想禁用此缓存。我尝试将$ http.get 添加到它,但仍然没有帮助。如何解决此问题? 问题答案: 我没有为每个GET请求禁用缓存,而是在$ httpProvider中全局禁用了它:
从IE发送的所有ajax调用都由Angular缓存,对于所有后续调用,我得到。虽然请求是相同的,但在我的情况下,响应不会是相同的。我想禁用这个缓存。我尝试将添加到$http.get,但仍然没有帮助。如何解决这个问题?
我目前使用service/$resource进行ajax调用(在本例中是GET),IE缓存调用,以便无法从服务器检索新的数据。我使用了一种通过谷歌搜索找到的技术来创建一个随机数并将其附加到请求中,这样IE就不会为数据进行缓存。 还有比在每个请求中添加cacheKill更好的方法吗?
问题内容: 我目前使用service / $ resource进行ajax调用(在这种情况下为GET),并且IE缓存了这些调用,因此无法从服务器检索新数据。我使用了一种通过谷歌搜索发现的技术来创建一个随机数并将其附加到请求中,以便IE不会去缓存数据。 有没有比将cacheKill添加到每个请求更好的方法? 工厂代码 来自控制器的呼叫 问题答案: 根据binarygiant的要求,我将我的评论作为答