ScriptResource.axd请求是否有任何特定的缓存问题?

时间:2013-09-11 15:14:31

标签: asp.net cache-control

在ASP.NET中,ScriptResource.axd处理程序以以下形式获取查询字符串参数dt

ScriptResource.axd?d=_hSUKSQdvAs7dxQgs9-PDrSiKiE0c9O5zvO0sj4yZ2QLo6tYqKk_bwwraYR04nIr3PC67krX9TJ74PqE3GLbGf5zgbmzm86AbQTJO_njhxV9HYTO0MUc2Q9MJgc1xDU2aS_17TjxLvUtjkkzQ61REg2&t=ffffffffae5faa5e

对具有这些特定参数的特定网址的所有调用是否都保证返回相同的确切内容?如果没有,什么时候可以改变?

或者,更一般地说,浏览器缓存是否应该以不同于任何其他文件类型的方式处理AXD文件?

1 个答案:

答案 0 :(得分:0)

ScriptResource.axd处理程序采用查询字符串参数d和t

这些参数涉及加密数据传输: https://referencesource.microsoft.com/#System.Web.Extensions/Handlers/ScriptResourceHandler.cs,770 https://referencesource.microsoft.com/#System.Web.Extensions/Handlers/ScriptResourceHandler.cs,286

是否所有保证使用这些特定参数的对该特定URL的调用都能返回相同的确切内容?如果没有,什么时候可以改变?

通常,返回的内容应该相同,但是取决于https://referencesource.microsoft.com/#System.Web.Extensions/Handlers/ScriptResourceHandler.cs,998714d467da2852,references使用者。

缓存策略https://referencesource.microsoft.com/#System.Web.Extensions/Handlers/ScriptResourceHandler.cs,504取决于https://referencesource.microsoft.com/#System.Web.Extensions/Configuration/ScriptingScriptResourceHandlerSection.cs,a75bc41405c5ac33设置。

或者,更笼统地说,为什么浏览器缓存应将AXD文件与其他文件类型区别对待?

我相信您可以通过启用上述https://referencesource.microsoft.com/#System.Web.Extensions/Configuration/ScriptingScriptResourceHandlerSection.cs,70选项来强制缓存。

P.S。它是回发/回调(WebForm_DoPostBackWithOptions,WebForm_DoCallback等)脚本的内容,还是来自ScriptManager异步请求的响应等。