【问题标题】:jQuery html responsejQuery html 响应
【发布时间】:2010-09-12 03:07:08
【问题描述】:

是否可以确定 $.ajax 返回的 响应 是从浏览器的缓存中提供的还是新鲜的?

谢谢。

【问题讨论】:

  • 更改标题以更清楚地反映您的要求,例如"确定 jQuery html 响应是缓存的还是新鲜的"

标签: javascript jquery ajax browser-cache


【解决方案1】:

不,这是不可能的。您可以做的是每次创建一个新 URL(例如:通过将随机字符串附加到 URL,服务器上的脚本会忽略该字符串),或者通过适当地设置响应的缓存标头。

见:http://www.mnot.net/cache_docs/#CACHE-CONTROL

您可能想要设置max-ageno-storeno-cachemust-revalidate 或前一个的组合。

【讨论】:

【解决方案2】:

您可以在 jQuery 中使用以下内容来确保它不会缓存:

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

我不确定你想要实现什么。

如果您真的想知道数据是否过时,可以执行以下操作:

  1. 让您编写的服务器在每次调用时都返回一个唯一的字符串
  2. 检查此字符串是否存在于您的 javascript 临时变量中
  3. 如果是,它是陈旧的,如果不是,它是新的。

【讨论】:

  • 我不想修改请求。我只想知道在使用 AJAX 从服务器(不一定是我的)收到一些响应后,响应是缓存的还是新鲜的。
猜你喜欢
  • 2019-08-03
  • 2015-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多