zoukankan      html  css  js  c++  java
  • Angularjs在360兼容模式下取数据缓存问题解决办法

      测试提了一个bug,在360浏览器兼容模式下,删除页面数据需要手动刷新浏览器才能看到最新的数据。首先要复现当时的问题,很容易就复现了,但是发现在360浏览器兼容模式下无法打开开发者工具。好在经过反复重装之后,终于打开了开发者工具,经过跟踪发现,第一次删除数据时可以正常刷新,第二次或以后的删除将无法刷新,跟踪代码,发现通过异步请求的数据正常的返回并且绑定了。点击搜索按钮,也无法实现刷新,但是点击分页,发现可以翻页。初步推断是浏览器缓存了异步请求数据,跟踪比较返回的数据发现,推断是正确的。于是从网上搜到一段代码,设置为无缓存请求,代码如下:

     1 app.config(function ($httpProvider) {
     2   // Initialize get if not there
     3   if (!$httpProvider.defaults.headers.get) {
     4     $httpProvider.defaults.headers.get = {};
     5   }
     6   // Enables Request.IsAjaxRequest() in ASP.NET MVC
     7   $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest';
     8   //禁用IE对ajax的缓存
     9   $httpProvider.defaults.headers.get['Cache-Control'] = 'no-cache';
    10   $httpProvider.defaults.headers.get['Pragma'] = 'no-cache';
    11 });

      以上主要是我解决问题的思路和方法,期望能够帮助其他遇到这个问题的小伙伴们快速解决这个问题。

  • 相关阅读:
    react生命周期-渲染阶段
    react声明周期详解
    react子传父
    react 爷爷组件件传递给孙子组件
    react验证参数格式类型
    原生input上传视拼,参数形式 file: (binary)形式的
    L2-4 彩虹瓶 (25分)
    L2-3 深入虎穴 (25分)
    L2-1 链表去重 (25分)
    L1-1 帅到没朋友 (20分)
  • 原文地址:https://www.cnblogs.com/xietong/p/7061787.html
Copyright © 2011-2022 走看看