【问题标题】:Ajax request data is cachedAjax 请求数据被缓存
【发布时间】:2018-02-25 22:35:37
【问题描述】:

我有一个在 setInterval 中加载的 ajax 函数,如下所示:

setInterval(function(){updateChart()}, 5000);

var updateChart = function(){
                    $.ajax({
                  url: './script.php',
                  type: 'post',
                  dataType: 'json',
                  cache: false,
                  data: {'candlesData':candlesData},
                  success: function(data) {
                    //alert(data);
                    //console.log("two");
                  //console.log(data);
                    gotData(data);
                    delete data;
                    delete candlesData;
                  },
                  error: function(xhr, desc, err) {
                    //console.log(xhr);
                    //console.log("Details: " + desc + "\nError:" + err);
                  }
                }).done(function() {

                });;// end ajax call 
}

随着时间的推移,我的浏览器内存变得越来越大。我尝试诊断并发现 AJAX 数据 (candlesData) 中的 POST 请求每次都被缓存...您可以在屏幕截图中看到这一点(保留数据列)。

我尝试了所有方法来清除缓存,但它不起作用。

Snapshot of retained data

【问题讨论】:

    标签: ajax caching memory setinterval


    【解决方案1】:

    我解决了这个问题。 而且我确认 ajax 帖子不存储缓存...

    问题是我有一个 javascript 对象,它每次都使用 setInterval 函数重新创建。我用过:

    objectName.destroy() 
    

    每次重新加载函数时都会触发它并解决了问题。

    【讨论】:

      猜你喜欢
      • 2014-11-25
      • 2010-10-13
      • 1970-01-01
      • 1970-01-01
      • 2016-09-23
      • 2013-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多