Symfony:缓存POST方法

时间:2010-11-02 15:34:22

标签: post caching symfony1

我已经阅读了Symfony的教程,它说POST请求永远不会被缓存。我可以覆盖它,以便我可以缓存POST请求的结果页面吗?

2 个答案:

答案 0 :(得分:3)

kuba的答案在技术上是正确的,但你确定你想要缓存POST吗?如果可能,最好重定向用户,在用户上存储一些值。

答案 1 :(得分:2)

Hopefuly你知道在大多数情况下缓存POST请求不是你想要的;)

以下提示。

缓存过滤器

缓存过滤器负责缓存响应。默认情况下,symfony使用 sfCacheFilter 类,您可以在应用程序的 filters.yml 文件中更改它。

查看缓存管理器

sfCacheFilter 做得不多。它使用视图缓存管理器来完成所有工作。

默认实现( sfViewCacheManager 类)具有 isCacheble()方法。你可以从这里开始,因为它为非GET请求的所有内容返回false。

可以在factories.yml文件中更改View缓存管理器类。您可以通过扩展 sfViewCacheManger 并重载其某些行为来编写自己的类。