如何使响应式网站中的sitecore的html缓存无效?

时间:2018-09-07 09:05:05

标签: asp.net-mvc sitecore sitecore8 sitecore-mvc device-detection

我们有一个基于Sitecore的响应式网站,与台式机不同,某些页面中的移动设备内容有所不同。我们正在使用Http Request用户代理来识别设备类型,并基于它具有不同的业务逻辑。

当我们为这些渲染启用了sitecore HTML缓存时,与用户代理逻辑配合使用的逻辑将不起作用。因为Sitecore缓存不会因设备而异。因此,对于其他设备,sitecore也会从渲染的相同HTML缓存中给出响应。

我们应该如何处理这种情况?

1 个答案:

答案 0 :(得分:2)

您可以使用业务逻辑为用户代理创建自己的自定义“依据”。或使用按设备而异,但是您需要以Sitecore支持的方式使用设备,在/sitecore/layout/Devices下创建设备并使用它们。

RenderRenderingProcessor创建一个Sitecore.Mvc.Pipelines.Response.RenderRenderingmvc.renderRendering pipeline)。并将复选框添加到模板/sitecore/templates/System/Layout/Sections/Caching/

有关代码示例,请参见 Custom Cache Criteria with MVC in the Sitecore from John West

有关缓存的更多信息,请参见Sitecore Caching and Sitecore Custom Cache