Catalyst::Response

Catalyst::Response - содержит вывод ответа на текущий запрос клиента



Catalyst Response класс, который предоставляет методы для ответа на текущий клиентский запрос. Соответствующий Catalyst::Engine для вашей среды преобразует Catalyst::Response в HTTP Response и возвращает это клиенту.


МЕТОДЫ

 

$res->body( $text | $fh | $iohandle_object )
$c->response->body('Catalyst rocks!');
Устанавливает или возвращает вывод (тексти или бинарные данные). Если вы возвращаете большое тело, вы можете использовать IO::Handle тип объекта (иногда это реализует метод чтения в той же самой форме), или дескриптор GLOB. Catalyst запишет по кускам в ответ.

$res->has_body
Функция которая возврати истину, когда тело будет установлено.

$res->code
Синоним для $res->status.

$res->content_encoding
Сокр для $res->headers->content_encoding.

$res->content_length
Сокр $res->headers->content_length.

$res->content_type
Сокр для $res->headers->content_type.

Это значение типично устанавливается вашим видом или плагином. Для примера, Catalyst::Plugin::Static::Simple предпологает что mime type основан на файле найденном, который Catalyst::View::TT по умолчанию ставит "text/html".

$res->cookies
Возвращает ссылку на хэш содержащий набор куки. Ключи хэша имя куки и их соответствующие значения хэш ссылки используются для создания CGI::Simple::Cookie объекта.

$c->response->cookies->{foo} = { value => '123' };

Ключи хэш ссылки справа соответствующих CGI::Simple::Cookie параметров такого же имени, за исключением их использования без длинного тире. Возможные параметры:

value
expires
domain
path
secure
httponly

$res->header
Сокр $res->headers->header.

$res->headers
Возвращает HTTP::Headers объект, который может быть установлен заголовками.

$c->response->headers->header( 'X-Catalyst' => $Catalyst::VERSION );

$res->output
Синоним для $res->body.

$res->redirect( $url, $status )
Причины ответа для пересылки на заданный URL. По умолчанию статус 302.

$c->response->redirect( 'http://slashdot.org' );
$c->response->redirect( 'http://slashdot.org', 307 );

Это удобны метод чтобы установить Location заголовок для цели редиректа и затем установить статус ответа. Вы захотите возвратить или "$c->detach()" чтобы прервать нормальный поток обработки если вы хотите переправить задуманое прямым путем.
Помните: не давайте относительный URL как $url, т.е: url который не полностью уточнен (= "http://...", и т.д.) или который начинается слешом (= "/path/here"). Пока это может работать, но не гарантирует что будет делать правильные вещи и не стандартное поведение. Вы можете оптимизировать urid_for() или uri_for_action() вместо.

$res->location
Устанавливает или возвращает HTTP 'Location'

$res->status
Возвращает или устанавливает HTTP статус.
$c->response->status(404);

$res->code синоним для этого, соответствует HTTP::Response->code.

$res->write( $data )
Пишет $data в поток выхода.

$res->print( @data )
Печатает @data в поток вывода, разделенные $. Это позволит вам пройти объект ответа к функциям которые хотят записать в IO::Handle.

$self->finalize_headers($c)
Пишет заголовки в ответ если уже не записан.

РАЗРУШЕНИЕ
Гарантирует, что ответ очистится и закроется в конце запроса.