Florian Ragwitz > Catalyst-Action-REST-0.91 > Catalyst::TraitFor::Request::REST

Download:
Catalyst-Action-REST-0.91.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  3
Open  15
View/Report Bugs
Module Version: 0.91   Source   Latest Release: Catalyst-Action-REST-1.15

NAME ^

Catalyst::TraitFor::Request::REST - A role to apply to Catalyst::Request giving it REST methods and attributes.

SYNOPSIS ^

     if ( $c->request->accepts('application/json') ) {
         ...
     }

     my $types = $c->request->accepted_content_types();

DESCRIPTION ^

This is a Moose::Role applied to Catalyst::Request that adds a few methods to the request object to facilitate writing REST-y code. Currently, these methods are all related to the content types accepted by the client.

METHODS ^

data

If the request went through the Deserializer action, this method will return the deserialized data structure.

accepted_content_types

Returns an array reference of content types accepted by the client.

The list of types is created by looking at the following sources:

  • Content-type header

    If this exists, this will always be the first type in the list.

  • content-type parameter

    If the request is a GET request and there is a "content-type" parameter in the query string, this will come before any types in the Accept header.

  • Accept header

    This will be parsed and the types found will be ordered by the relative quality specified for each type.

If a type appears in more than one of these places, it is ordered based on where it is first found.

preferred_content_type

This returns the first content type found. It is shorthand for:

  $request->accepted_content_types->[0]
accepts($type)

Given a content type, this returns true if the type is accepted.

Note that this does not do any wildcard expansion of types.

AUTHORS ^

See Catalyst::Action::REST for authors.

LICENSE ^

You may distribute this code under the same terms as Perl itself.

syntax highlighting: