diff options
author | Jesse Luehrs <doy@tozt.net> | 2012-07-22 14:51:04 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2012-07-22 14:51:04 -0500 |
commit | 7b97f1dbd765eb7e2bdcac3dd9db623273e6f45d (patch) | |
tree | a762c688658588b3988ee7171d5986a79eccea72 /lib | |
parent | ae8b38ecdccef81043f70bfa00dbaa1c664510ad (diff) | |
download | web-request-7b97f1dbd765eb7e2bdcac3dd9db623273e6f45d.tar.gz web-request-7b97f1dbd765eb7e2bdcac3dd9db623273e6f45d.zip |
the parameter keys also need to be decoded
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Web/Request.pm | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Web/Request.pm b/lib/Web/Request.pm index e63d245..ecc5e26 100644 --- a/lib/Web/Request.pm +++ b/lib/Web/Request.pm @@ -251,7 +251,7 @@ has query_parameters => ( (map { $_ => '' } $self->uri->query_keywords), ); return { - map { $_ => $self->decode($params{$_}) } keys %params + map { $self->decode($_) } map { $_ => $params{$_} } keys %params }; }, ); @@ -268,6 +268,7 @@ has all_query_parameters => ( my $ret = {}; while (my ($k, $v) = splice @params, 0, 2) { + $k = $self->decode($k); push @{ $ret->{$k} ||= [] }, $self->decode($v); } @@ -288,6 +289,7 @@ has body_parameters => ( my $ret = {}; for my $key (keys %$body) { my $val = $body->{$key}; + $key = $self->decode($key); $ret->{$key} = $self->decode(ref($val) ? $val->[-1] : $val); } @@ -308,6 +310,7 @@ has all_body_parameters => ( my $ret = {}; for my $key (keys %$body) { my $val = $body->{$key}; + $key = $self->decode($key); $ret->{$key} = ref($val) ? [ map { $self->decode($_) } @$val ] : [ $self->decode($val) ]; |