1 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
4 .\" ========================================================================
5 .de Sh \" Subsection heading
13 .de Sp \" Vertical space (when we can't use .PP)
17 .de Vb \" Begin verbatim text
22 .de Ve \" End verbatim text
26 .\" Set up some character translations and predefined strings. \*(-- will
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28 .\" double quote, and \*(R" will give a right double quote. | will give a
29 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
30 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
31 .\" expand to `' in nroff, nothing in troff, for use with C<>.
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
37 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
51 .\" If the F register is turned on, we'll generate index entries on stderr for
52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53 .\" entries marked with X<> in POD. Of course, you'll have to process the
54 .\" output yourself in some meaningful fashion.
57 . tm Index:\\$1\t\\n%\t"\\$2"
63 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
64 .\" way too many mistakes in technical documents.
68 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
69 .\" Fear. Run. Save yourself. No user-serviceable parts.
70 . \" fudge factors for nroff and troff
79 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
85 . \" simple accents for nroff and troff
95 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
96 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
97 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
98 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
99 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
100 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
102 . \" troff and (daisy-wheel) nroff accents
103 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
104 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
105 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
106 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
107 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
108 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
109 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
110 .ds ae a\h'-(\w'a'u*4/10)'e
111 .ds Ae A\h'-(\w'A'u*4/10)'E
112 . \" corrections for vroff
113 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
114 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
115 . \" for low resolution devices (crt and lpr)
116 .if \n(.H>23 .if \n(.V>19 \
129 .\" ========================================================================
131 .IX Title "Catalyst::Response 3"
132 .TH Catalyst::Response 3 "2009-11-30" "perl v5.8.7" "User Contributed Perl Documentation"
134 Catalyst::Response \- stores output responding to the current client request
136 .IX Header "SYNOPSIS"
138 \& $res = $c\->response;
141 \& $res\->content_encoding;
142 \& $res\->content_length;
143 \& $res\->content_type;
153 .IX Header "DESCRIPTION"
154 This is the Catalyst Response class, which provides methods for responding to
155 the current client request. The appropriate Catalyst::Engine for your environment
156 will turn the Catalyst::Response into a \s-1HTTP\s0 Response and return it to the client.
159 .ie n .Sh "$res\->body( $text\fP | \f(CW$fh\fP | \f(CW$iohandle_object )"
160 .el .Sh "$res\->body( \f(CW$text\fP | \f(CW$fh\fP | \f(CW$iohandle_object\fP )"
161 .IX Subsection "$res->body( $text | $fh | $iohandle_object )"
163 \& $c\->response\->body('Catalyst rocks!');
166 Sets or returns the output (text or binary data). If you are returning a large body,
167 you might want to use a IO::Handle type of object (Something that implements the read method
168 in the same fashion), or a filehandle \s-1GLOB\s0. Catalyst
169 will write it piece by piece into the response.
170 .Sh "$res\->has_body"
171 .IX Subsection "$res->has_body"
172 Predicate which returns true when a body has been set.
174 .IX Subsection "$res->code"
175 Alias for \f(CW$res\fR\->status.
176 .Sh "$res\->content_encoding"
177 .IX Subsection "$res->content_encoding"
178 Shortcut for \f(CW$res\fR\->headers\->content_encoding.
179 .Sh "$res\->content_length"
180 .IX Subsection "$res->content_length"
181 Shortcut for \f(CW$res\fR\->headers\->content_length.
182 .Sh "$res\->content_type"
183 .IX Subsection "$res->content_type"
184 Shortcut for \f(CW$res\fR\->headers\->content_type.
186 This value is typically set by your view or plugin. For example,
187 Catalyst::Plugin::Static::Simple will guess the mime type based on the file
188 it found, while Catalyst::View::TT defaults to \f(CW\*(C`text/html\*(C'\fR.
190 .IX Subsection "$res->cookies"
191 Returns a reference to a hash containing cookies to be set. The keys of the
192 hash are the cookies' names, and their corresponding values are hash
193 references used to construct a CGI::Simple::Cookie object.
196 \& $c\->response\->cookies\->{foo} = { value => '123' };
199 The keys of the hash reference on the right correspond to the CGI::Simple::Cookie
200 parameters of the same name, except they are used without a leading dash.
201 Possible parameters are:
217 .IX Subsection "$res->header"
218 Shortcut for \f(CW$res\fR\->headers\->header.
220 .IX Subsection "$res->headers"
221 Returns an HTTP::Headers object, which can be used to set headers.
224 \& $c\->response\->headers\->header( 'X\-Catalyst' => $Catalyst::VERSION );
227 .IX Subsection "$res->output"
228 Alias for \f(CW$res\fR\->body.
229 .ie n .Sh "$res\->redirect( $url\fP, \f(CW$status )"
230 .el .Sh "$res\->redirect( \f(CW$url\fP, \f(CW$status\fP )"
231 .IX Subsection "$res->redirect( $url, $status )"
232 Causes the response to redirect to the specified \s-1URL\s0. The default status is
236 \& $c\->response\->redirect( 'http://slashdot.org' );
237 \& $c\->response\->redirect( 'http://slashdot.org', 307 );
240 This is a convenience method that sets the Location header to the
241 redirect destination, and then sets the response status. You will
242 want to \f(CW\*(C` return \*(C'\fR or \f(CW\*(C`$c\->detach()\*(C'\fR to interrupt the normal
243 processing flow if you want the redirect to occur straight away.
244 .Sh "$res\->location"
245 .IX Subsection "$res->location"
246 Sets or returns the \s-1HTTP\s0 'Location'.
248 .IX Subsection "$res->status"
249 Sets or returns the \s-1HTTP\s0 status.
252 \& $c\->response\->status(404);
255 $res\->code is an alias for this, to match HTTP::Response\->code.
256 .ie n .Sh "$res\->write( $data )"
257 .el .Sh "$res\->write( \f(CW$data\fP )"
258 .IX Subsection "$res->write( $data )"
259 Writes \f(CW$data\fR to the output stream.
261 .IX Subsection "meta"
263 .ie n .Sh "$res\->print( @data )"
264 .el .Sh "$res\->print( \f(CW@data\fP )"
265 .IX Subsection "$res->print( @data )"
266 Prints \f(CW@data\fR to the output stream, separated by $,. This lets you pass
267 the response object to functions that want to write to an IO::Handle.
270 Catalyst Contributors, see Catalyst.pm
272 .IX Header "COPYRIGHT"
273 This library is free software. You can redistribute it and/or modify
274 it under the same terms as Perl itself.