NAME
Catalyst::Action::REST::ForBrowsers - Automated REST Method Dispatching that Accommodates Browsers
SYNOPSIS
sub foo :Local :ActionClass('REST::ForBrowsers') {
... do setup for HTTP method specific handlers ...
}
sub foo_GET : Private {
... do something for GET requests ...
}
sub foo_GET_html : Private {
... do something for GET requests from browsers ...
}
sub foo_PUT : Private {
... do something for PUT requests ...
}
DESCRIPTION
This class subclasses Catalyst::Action::REST to add an additional dispatching hook. If the request is a GET request and the request looks like it comes from a browser, it tries to dispatch to a GET_html
method before trying to the GET
method instead. All other HTTP methods are dispatched in the same way.
For example, in the synopsis above, calling GET on "/foo" from a browser will end up calling the foo_GET_html
method. If the request is not from a browser, it will call foo_GET
.
See Catalyst::Action::REST for more details on dispatching details.
METHODS
- dispatch
-
This method overrides the default dispatch mechanism to the re-dispatching mechanism described above.
SEE ALSO
You likely want to look at Catalyst::Controller::REST, which implements a sensible set of defaults for a controller doing REST.
This class automatically adds the Catalyst::TraitFor::Request::REST::ForBrowsers role to your request class.
CONTRIBUTORS
Dave Rolsky <autarch@urth.org>
COPYRIGHT
Copyright the above named AUTHOR and CONTRIBUTORS
LICENSE
You may distribute this code under the same terms as Perl itself.