考虑到可以用“服务器端”语言实现的典型Web应用程序,例如ASP.NET集合或PHP,使用提供最终用户交互的浏览器,可以使用持久性本地缓存?
例如,采用一个存储数千个员工记录的简单集中式数据库。只要此缓存不会变得陈旧,浏览器就可以更有效地获得适当数据的本地副本。这将如何实现?据我所知,cookie是暴露的浏览器内存的扩展,严格的域策略会阻止与硬盘的任何交互。
我正在考虑从PHP或ASPX Web表单应用程序(超文本应用程序?)的角度来看,我理解为无状态,所以我很难理解如何实现这一点。其他.NET解决方案是否会提供任何优势,例如.NET MVC或WCF?
我应该注意,这不是考虑applet技术Java,Flash,Silverlight等。
答案 0 :(得分:4)
HTML5 localStorage和sessionStorage最多可容纳5 MB或更多,具体取决于域的浏览器。
HTML5 ApplicationCache特别适用于您想要的内容,因为您可以指定每个请求检查修改的清单,但每次只有在不请求缓存资源时才访问该文件,除非有指示这样做,节省吨数带宽如果您通过服务器端动态编程提供清单文件,则可以通过在获取新数据时更改清单文件时间戳或文档中的注释来轻松实现缓存策略。清单文件可以基于用户的动态提供如果您需要划分数据,那么您可能会影响每个用户拥有的数据集。
你必须使用JSON.stringify和jQuery.parseJSON在JavaScript客户端上进行大量开发,以使用像knockout.js这样的框架进行序列化和反序列化以进行数据绑定等。我有丰富的经验来做这些事情和使用这么多地思考服务器端。现在我只看到服务器端允许我使用CRUD JSON数据,就像我在使用Web应用程序时使用它一样。