我正在使用asp.net mvc和jquery。我使用
从jquery调用控制器操作$.getJSON("/customer/details", function (data) {
// process the data
});
我在控制器操作上设置了输出缓存,但它不起作用,因为似乎缓存被破坏,因为url包含一个随机数,例如。
https://localhost/customer/details?_=1403629723467
这不是由我填充,而是由框架填充。我可以通过任何方式阻止这个被添加到你的身上吗?
答案 0 :(得分:1)
那是因为cache: false
。这可以防止浏览器从其缓存中获取内容,并用于GET
& HEAD
请求。
您可以确认 - 但由于显而易见的原因,我不建议您将设置保留 - 您可以将其关闭,您将看不到该号码:
$.ajaxSetup({cache:true});
缓存(默认值:true,false,对于dataType'script'和'jsonp') 类型: 布尔值如果设置为false,则会强制请求的页面不是 由浏览器缓存。注意:将缓存设置为false仅适用 正确使用HEAD和GET请求。它通过附加工作 GET参数的“_ = {timestamp}”。不需要该参数 其他类型的请求,除了在IE8中对URL进行POST时 这已经被GET要求了。
参考:
- http://api.jquery.com/jquery.ajax/