[Catalyst] Re: redirection to the original URI

Thomas Hartman thomashartman1 at googlemail.com
Mon Jan 1 07:18:23 GMT 2007


Actually I see now that the location method is mentioned in the code

http://search.cpan.org/src/SRI/Catalyst-5.61/lib/Catalyst/Response.pm

Just not in the documentation. Indeed, it seems only to be used by the
redirect() method.

Couldn't you just then use Response::redirect here?

If my understanding is correct, by using features not advertised in
the interface (ie, the module documentation), it's more likely to be
broken on upgrade.



2007/1/1, Thomas Hartman <thomashartman1 at googlemail.com>:
> Do you mean Response::redirect() rather than Response::location()? I
> couldn't find anything about the location method in
>
> http://search.cpan.org/~mramberg/Catalyst-Runtime-5.7006/lib/Catalyst/Response.pm
>
> Or is this a newer/older version than what's current on cpan?
>
> 2007/1/1, Fayland Lam <fayland at gmail.com>:
> > Octavian Rasnita wrote:
> > > Hi,
> > >
> > > If the user wants to access a restricted zone and it is redirected to
> > > the login page, which is the recommended way of redirecting him back to
> > > the original URL?
> > >
> > > I know that I could create a hidden field in the login form and put the
> > > request URL in that field, and after the login, make a redirect to that
> > > URL, but I just want to know if there is a more easier way.
> > >
> >
> > well I would put such code in the sub end : Private {
> >
> >      if ($c->res->location) {
> >          # for login using!
> >          if ($c->res->location =~ /^\/login/) {
> >              my $location = '/login?referer=/' . $c->req->path;
> >              $location .= '?' . uri_escape($c->req->uri->query) if
> > ($c->req->uri->query);
> >              $c->res->location($location);
> >          }
> >          return 1;
> >      }
> >
> > that would be much easier.
> >
> > > Thanks.
> > >
> > > Octavian
> > >
> > >
> > > _______________________________________________
> > > List: Catalyst at lists.rawmode.org
> > > Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> > > Searchable archive: http://www.mail-archive.com/catalyst@lists.rawmode.org/
> > > Dev site: http://dev.catalyst.perl.org/
> > >
> >
> >
> > --
> > Fayland Lam // http://www.fayland.org/
> >
> > _______________________________________________
> > List: Catalyst at lists.rawmode.org
> > Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> > Searchable archive: http://www.mail-archive.com/catalyst@lists.rawmode.org/
> > Dev site: http://dev.catalyst.perl.org/
> >
>



More information about the Catalyst mailing list