Javascript/JQuery.本地缓存xml文件

Javascript/JQuery. Cache xml file locally

本文关键字:缓存 xml 文件 JQuery Javascript      更新时间:2023-09-26

使用$.ajax({..}),我从服务器接收XML文件的内容。因此,我不必每次加载页面时都请求此文件,如果可能的话,我希望在本地缓存此内容,并将其保存在磁盘上的文件中。但是,以这样一种方式缓存它,即使在重新启动后的第二天也可以使用。XML文件内容每天都在更新,因此不需要经常重新发送文件。

有可能吗?如果是这样,我该如何做到这一点?你能提供一个链接或一些示例代码吗?我一直在寻找我能理解的好东西,但我没有成功。

您需要这个

http://brian.io/lawnchair/

默认情况下,浏览器通常会根据服务器设置文件头的方式为您缓存响应。如果您需要更高的持久性,您可以使用本地存储,可能还可以使用Cookie来支持旧版(尽管在存储方面存在非常实际的大小限制)。

使用本地存储非常简单。您还可以带上一个到期时间戳,让客户端知道何时可以续订缓存。

一个简单的例子:

var mydata = { foo: 'bar' };
var cache = {
    data: mydata,
    expires: new Date().getTime()
}
sessionStorage.setItem("cache", JSON.stringify(cache));

获取数据:

var cache = JSON.parse( sessionStorage.getItem("cache") );
if ( cache.expires + day < new Date().getTime() ) {
    // get a fresh copy
} else {
    var mydata = cache.data;
}

如果您对更高级别的API更满意,那么您可以使用许多本地缓存抽象。