使用返回按钮后,AJAX调用未触发服务器

3

我在页面加载时进行了一个简单的AJAX调用...

$(document).ready(function() {
    $.get('', {'format': 'json'}, function(items) {
        console.log('hello');
    }
}

如果我在页面上点击链接,然后使用返回按钮,上面的代码将运行(它会向控制台输出“hello”),但请求不会到达服务器,它只是使用最初的响应,就好像它被缓存了一样。
有没有可能强制它访问服务器?
3个回答

3
如果您使用$.ajax()方法,则可以设置cache:false。以下是您的$.get()调用的等效方式:
$.ajax({
  url: 'yourUrlHere',
  data: {'format': 'json'},
  cache : false,
  success: function(items) {
    console.log('hello');
  },
  dataType: 'json'
});

或者设置所有ajax调用的默认值:

$.ajaxSetup({cache : false});

1

您可以配置您的网站,以便不缓存ajax响应。

//jQuery
$.ajaxSetup({
    cache : false
});

0

这将防止缓存...

$(document).ready(function() { 
    $.get('?'+(Math.random()*20), {'format': 'json'}, function(items) { 
        console.log('hello'); 
    } 
} 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接