NAME
Plack::Middleware::Recursive - Allows PSGI apps to include or forward requests recursively
SYNOPSIS
# with Builder
enable "Recursive";
# in apps
my $res = $env->{'plack.recursive.include'}->("/new_path");
# Or, use exceptions
my $app = sub {
# ...
Plack::Recursive::ForwardRequest->throw("/new_path");
};
DESCRIPTION
Plack::Middleware::Recursive allows PSGI applications to recursively include or forward requests to other paths. Applications can make use of callbacks stored in $env->{'plack.recursive.include'}
to include another path to get the response (whether it's an array ref or a code ref depending on your application), or throw an exception Plack::Recursive::ForwardRequest anywhere in the code to forward the current request (i.e. abort the current and redo the request).
AUTHORS
Tatsuhiko Miyagawa
Masahiro Honma
SEE ALSO
Plack Plack::Middleware::HTTPExceptions
The idea, code and interface are stolen from Rack::Recursive and paste.recursive.