【发布时间】:2009-12-15 00:44:11
【问题描述】:
在使用 Javascript 的 IE 中,有没有办法知道使用 XmlHttpRequest 对 URL 执行常规 GET 是否会从缓存中提取其数据或访问服务器?
如果没有办法提前知道,有没有办法告诉 XmlHttpRequest 不要访问服务器,而是尽可能从缓存中拉取?
澄清一下:我了解浏览器缓存的工作原理,我试图了解是否可以使用 javascript 提前确定 ajax 调用是否会使用浏览器缓存。就我而言,我正在编写一个 JS 库,所以我不控制服务器的行为,所以我在先验知道什么是缓存设置/标头方面受到很大限制。
【问题讨论】:
-
如果它在缓存中,它会从缓存中拉出,你不必告诉浏览器这样做。现在,通常需要相反的情况:即使它在缓存中,有时您也希望从服务器中重新获取它。 IOW:我不明白你的问题。
-
我的问题是:我需要知道它将从缓存中提取。我正在提供一个第 3 方 JS 库,它希望读取 response.text 而不调用对服务器的调用,这可能会产生副作用。我可以在 response.text 获得的唯一方法是发出一个“假”ajax 请求,如果我确定它不会超过缓存。
标签: javascript internet-explorer caching xmlhttprequest