Как оценить ACL в Kohana 3.2 HTTP_Cache кэшированные запросы - PullRequest
2 голосов
/ 18 января 2012

После недавнего обновления до внутреннего API на основе REST K3.2 я собираюсь использовать механизм внутреннего кэширования запросов.

Я смотрю на кеширование на начальном уровне запросов (поэтому в приложении index.php):

1) это принципиально ошибочная идея?

Мой начальный запрос выглядит так:

$obj_r = Request::factory(TRUE, HTTP_Cache::factory('memcache'))
    ->execute();

echo $obj_r->send_headers()
    ->body();

Это все прекрасно работает, за исключением того, что запрос из источника, который соответствует внутреннему basic_cache_key_generator, просто (и правильно) вернет кэшированный ответ - пропуская любые правила ACL приложения (которые обычно происходят как часть функции parent :: before)

2) Правильный ли здесь подход к предоставлению настраиваемого cache_key_callback в качестве опции для вызова HTTP_Cache :: factory? - в рамках этого пользовательского обратного вызова я могу затем построить и оценить правила ACL, запрещающие доступ к ресурсу, если требуется

Приношу искренние извинения, если я пропустил какие-либо документы, связанные с этим, я посмотрел!

1 Ответ

0 голосов
/ 10 октября 2012

Я думаю, вы должны использовать $this->response->check_cache($cache_key, $this->request) вместо этого.Ваша страница отправит ETag на основе этого пользовательского обратного вызова.

...