【问题标题】:ajax with offline cache带有离线缓存的ajax
【发布时间】:2015-12-14 09:45:46
【问题描述】:

我正在使用脱机机架的脱机方法,但在我的一个 js 文件中,我需要避免缓存一个 ajax 调用,因为同一个 js 用于脱机和联机。但是在页面重新加载后,在线时使用相同的缓存?还有其他方法可以避免这种缓存吗?

$('#cSearch').keyup(function(e){
  var number = $(this).val();
  var urlVal = "/customer/get_details";
  $.ajax({
      cache: false,
      url: urlVal,
      data: {"term": number, t: Math.random() },
      success: function(){
      }
  });

});

【问题讨论】:

    标签: jquery ajax caching offline-caching


    【解决方案1】:

    您可以使用 var 来检查系统是否连接到网络:

    $('#cSearch').keyup(function(e){
      var number = $(this).val();
      var urlVal = "/customer/get_details";
      var cache = window.navigator.onLine ? false : true; // check if sys is online
      $.ajax({
          cache: cache, // <-----use it here
          url: urlVal,
          data: {"term": number, t: Math.random() },
          success: function(){
          }
      });
    });
    

    【讨论】:

    • 感谢@jai 的回复,但是这里的问题是,即使缓存是假的,它也从缓存中取出,不会调用rails 方法。我也尝试使用同样不起作用的 url 添加时间戳。
    • 得到了问题,那是请求方法的问题
    猜你喜欢
    • 2013-12-05
    • 2013-09-17
    • 1970-01-01
    • 2019-05-09
    • 1970-01-01
    • 1970-01-01
    • 2018-03-28
    • 2010-11-15
    • 2018-08-06
    相关资源
    最近更新 更多