[Catalyst] + in GET param

Gavin Henry ghenry at perl.me.uk
Tue Sep 11 14:04:28 GMT 2007


Dear list,

I have created a url via uri_for that produces (hashref passed in):

     http://myserver.com/blah/?username=first.last%2Bme%40gmail.com

so the + is escaped into %2B. Fine.

This param comes in via:

$c->stash->{username} = $c->req->param('username');

A warn on $c->req->param('username');

shows (as does the debug console via _server.pl and via Apache):

     first.last me at gmail.com

as a + sign is a shortcut for space in a URL. The above is a valid e-mail
address which I need to cater for.

Any ideas on how to get the first.last+me at gmail.com into Catalyst without
the + getting turned into a space?

If it's not possible I can do a redesign of this part of the site.

Thanks,

Gavin.



More information about the Catalyst mailing list