Catalyst::Engine - Catalyst движок
Методы
$self->finalize_body($c)
Заканчивает
тело. Выводит ответ в поток вывода.
$self->finalize_cookies($c)
Создает
CGI::Simple::Cookie объект из $c->res->cookies, и
устанавливает их как заголовки ответа.
$self->finalize_error($c)
Выводит
соответствующее сообщение об
ошибке.Вызывается если есть ошибка в
$c после диспетчеризации заканчивается.
Выведет дебаг сообщения если Catalyst в
режиме отладки, или 'please come back later'
сообщение в другом случае.
$self->finalize_headers($c)
Позволяет
движкам записать заголовок в ответ.
$self->finalize_uploads($c)
Очищает
после пересылки, удаляет временные
файлы.
$self->prepare_body($c)
устанавливает
Catalyst::Request тело объекта используя
HTTP::Body
$self->prepare_body_chunk($c)
Добавляет
участок памяти в тело запроса.
$self->prepare_body_parameters($c)
Устанавливает
параметры из тела.
$self->prepare_parameters($c)
устанавливает
параметры из запроса отправляет параметры
$self->prepare_path($c)
абстрактный
метод, реализован движком.
$self->prepare_request($c)
$self->prepare_query_parameters($c)
обрабатывает
строку запроса и извлекает параметры
запроса
$self->prepare_read($c)
Подготавливает
для чтения инициализируя Content-Length из
заголовков.
$self->prepare_request(@arguments)
Заполняет
объект контекста из объекта запроса.
$self->prepare_uploads($c)
$self->write($c,
$buffer)
Пишет
буффер клиенту.
$self->read($c,
[$maxlength])
Читает
из входящего потока вызовом
"$self->read_chunk".
Поддерживает
read_length и read_position счетчики как только
данные будут прочитаны.
$self->read_chunk($c,
\$buffer, $length)
Каждый
движок реализует read_chunk как выделенный
путь для чтения участка данных. Возвращает
количество прочитанных байтов. Возвращает
0 говорящий, что данных для чтения больше
нет.
$self->run($app,
$server)
Стартует
движок. Собирает PSGI приложение и вызывает
run метод на сервере переданном, которы
затем в цикле управляет запросами.
build_psgi_app
($app, @args)
Собирает
и возвращает PSGI приложение закрывая.
(Необработанные данные, не обертываются
в мидлваре)
$self->unescape_uri($uri)
Непреобразованный
дает URI используя наиболее эффективный
доступный метод. Движки такие как Apache
могут реализовать это используя Apache
Си-подобный модули, для примера.
$self->finalize_output
<устаревший>,
см finalize_body
$self->env
Хэш
содержащий переменный окружения включая
многие специальные переменные вставленные
WWW сервером - такие как SERVER_*, REMOTE_*, HTTP_*
...
Перед
доступом к переменным окружения,
обдумывайте такая же ли информация не
напрямую доступна через Catalyst объекты
$c->request, $c->engine ...
ОСТЕРЕГАЙТЕСЬ:
если вы действительно нуждаетесь в
доступе к некоторым переменным окружения
из вашего приложения Catalyst, вам следует
использовать $c->enginge->{VARNAME} вместо
$ENV{VARNAME} как в некоторых окружениях %ENV
хэш не содержит то что вы ожидаете.