繁体   English   中英

轻松处理json的浏览器文件夹缓存

[英]breeze handling of browser folder cache of json

我正在使用带有datajs的微风来获取odata json结果。

breeze.config.initializeAdapterInstances({dataService:“ OData”});

我想确保返回的json结果仅驻留在客户端内存中,并且不会写入浏览器的客户端文件夹缓存中。

微风当前如何公开有关结果是否写入文件夹缓存中的文件的json结果的处理? 这是敏感数据,仅应驻留在呼叫设备的内存中。 微风的默认设置是什么,我将如何检查或更改它?

从浏览器缓存的角度来看,Breeze不会对查询的结果做任何特殊的事情。 它仅执行ajax查询并处理结果。

通常,通过让服务器告诉客户端不要缓存结果,通常可以处理有关浏览器缓存任何ajax结果的规则。 如何完成取决于服务的编写方式。

如果将WCF DataService用于此OData终结点,则代码可能如下所示:

注意:我尚未测试此代码,因此请带一点盐。 应该有更多有关如何在Microsoft OData或Microsoft WCF数据服务站点上为OData服务设置缓存头的信息。

public class ODataService : DataService<Foo> {

   protected override void OnStartProcessingRequest(ProcessRequestArgs args) {
       HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
       // or possibly
       // HttpContext.Current.Response.AddHeader("Cache-control", "no-cache");
   }

   ... other code here ...
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM