2014-09-25 45 views
1

我正在使用Symfony2的AppCache,它的工作非常好。儘管我有一個關於flashbags的問題。當我進行PUT,POST或DELETE請求時,我會爲用戶製作一個帶有消息的Flashbag。然而,這個Flashbag存儲在緩存中,當我通過GET方法訪問緩存的路由時,Flashbag仍然在那裏。Symfony2:如何避免緩存中的閃光燈

我的問題是如何在頁面中只有一次閃存包(而不是在緩存響應中)。我已經閱讀過ESI,但我不知道這對我有什麼幫助:我不知道如何創建一個控制器,唯一的目的是顯示flashbags。此外,此控制器可能沒有必要的信息來顯示正確的閃光包。

謝謝你的回答。

乾杯!

回答

0

FlashMessages存儲在用戶會話中,而不是緩存中,它們必須由呈現它們的控制器「消耗」。如果您正在進行AJAX或純REST調用(如您的問題所示),則不應使用Flashbag,而應在AJAX請求者中嵌入一些響應機制,或者使用正確的HTTP響應代碼。