mapado/cache-info-bundle

此包已废弃,不再维护。未建议替代包。

基于Symfony框架的Http缓存信息

安装次数: 2,301

依赖者: 0

建议者: 0

安全性: 0

星级: 1

关注者: 3

分支: 0

公开问题: 0

类型:symfony-bundle

v1.0.1 2016-01-12 10:42 UTC

This package is auto-updated.

Last update: 2023-09-15 20:34:02 UTC


README

此包为Symfony项目添加了一个简单命令,用于输出HTTP缓存信息。

安装

composer require mapado/cache-info-bundle
// AppKernel.php
    $bundles = array(
        ...
        new Mapado\CacheInfoBundle\MapadoCacheInfoBundle(),
    );

使用方法

php app/console mapado:http-cache:list

输出缓存设置的详细信息列表

+------------------------------------------------------------------------------+----------------+---------+
| route + pattern                                                              | private        | ttl     |
+------------------------------------------------------------------------------+----------------+---------+
| my_route                                                                     | public         | 6h      |
| /my/route                                                                    |                |         |
+------------------------------------------------------------------------------+----------------+---------+
| another route                                                                | public         | 1d      |
| /another/route                                                               |                |         |
+------------------------------------------------------------------------------+----------------+---------+
| a private route                                                              | private        | null    |
| /private                                                                     |                |         |
+------------------------------------------------------------------------------+----------------+---------+
| a complex cache route                                                        | public|private | 4h|null |
| /complex                                                                     |                |         |
+------------------------------------------------------------------------------+----------------+---------+

缓存时间定义

默认情况下,此命令利用Sensio框架包的@Cache注解功能。它也可以很好地与路由缓存定义(对于FrameworkBundle:Template:template路由)一起工作。

复杂路由缓存 | 手动缓存设置

如果您有复杂的路由缓存,或者手动调用$response->setSMaxAge()$response->setPublic(),则需要使用@CacheMayBe注解。

示例

use Mapado\CacheInfoBundle\Annotation\CacheMayBe;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Cache;

class FooController
{
    /**
     * @CacheMayBe(values={@Cache(public=true, smaxage="14400"), @Cache(public=false)})
     */
     public function complexRouteAction()
     {
         $isPublic = // determine if your route is public ...

         $response->setPublic($isPublic);
         if ($isPublic) {
             $response->setSMaxAge(14400);
         }

         return $response;
     }
}

如果您不这样做,该路由将被标记为private