[英]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.