昨天我問了this的問題,並得到了一些非常好的反饋。總結我的情況,我試圖添加緩存 - 禁止HTTP響應頭到我的Spring MVC Web應用程序(我意外繼承的項目)。Spring MVC如何處理1頁應用程序的標題?
所以,每個答案-ER的(並且最終,@ Bozho的)建議,我已將此添加到我的Spring配置文件:
<mvc:annotation-driven/>
<mvc:interceptors>
<bean id="webContentInterceptor" class="org.springframework.web.servlet.mvc.WebContentInterceptor">
<property name="cacheSeconds" value="-1"/>
<property name="useExpiresHeader" value="true"/>
<property name="useCacheControlHeader" value="true"/>
<property name="useCacheControlNoStore" value="true"/>
</bean>
</mvc:interceptors>
我重新建造我的應用程序在本地,而在Firefox中打開它所以我可以使用Firebug來測試返回HTTP響應的頭文件。
對我來說不幸的是,原始開發人員的目標是使其成爲一個「1頁的Web應用程序」,每個實際的JSP頁面有大約40多個AJAX調用。
我不僅不看到我要找的Cache-Control
,Expires
等,這些40 + AJAX請求的頭,但我擔心,因爲有每個JSP頁面超過1個AJAX請求,Spring攔截器不知道將哪些AJAX調用添加到頭文件中。我沒有看到任何錯誤消息或日誌記錄輸出來表明Spring不喜歡我的配置等。一切似乎都很好......它只是不工作!
- 我對此配置有誤嗎?如果不是,那麼爲什麼這個不起作用的原因是什麼(爲什麼攔截器沒有踢入)?
- 做多個AJAX調用會導致Spring MVC請求攔截器行爲異常嗎?
在此先感謝您的幫助!
這仍然是一個問題 - 沒有任何人有什麼建議嗎? – IAmYourFaja