Sharepoint If-Modified-Since

时间:2011-05-10 07:58:52

标签: asp.net http-headers httphandler

我编写了一个在SharePoint中使用的处理程序,它将从查询字符串中的给定参数生成JSON字符串。然后,JS函数将使用此JSON字符串将HTML中的相关数据显示给客户端,但是,调用有点昂贵,并且希望将输出缓存一次。

处理程序当前迎合了有关OUTPUT缓存的所有内容,并在应用程序中进行了测试,但是,我感到困惑的是,特别是在SharePoint(2007)中,“If-Modified-Since”标头属性从未出现,基本上它总是以null的形式返回。

我发现blog-on-blog在图片方面讨论了这个问题,包括文件,但我找不到与页面(ASPX,AXD,ASHX)和处理程序自身有关的任何具体内容。

我唯一的假设是我使用的是AXD文件,默认情况下OUTPUT缓存不直接支持该文件?

代码类似于:

bool isModifiedSinceLast = (context.Request.Headers.Get("If-Modified-Since") != null)
     : true
     ? false;

if (!isModifiedSinceLast)
{
    context.Response.Headers.AppendHeader("If-Modified-Since", Guid.NewGuid());
}
else
{
    // complete the call from cache
}

谢谢,

埃里克

0 个答案:

没有答案