App-Donburi

 view release on metacpan or  search on metacpan

lib/App/Donburi/Web/Request.pm  view on Meta::CPAN

sub query_parameters {
    my ($self) = @_;
    $self->{'donburi.query_parameters'} ||= $self->_decode_parameters($self->SUPER::query_parameters());
}

sub _decode_parameters {
    my ($self, $stuff) = @_;

    my $encoding = 'utf-8';
    my @flatten = $stuff->flatten();
    my @decoded;
    while ( my ($k, $v) = splice @flatten, 0, 2 ) {
        push @decoded, Encode::decode($encoding, $k), Encode::decode($encoding, $v);
    }
    return Hash::MultiValue->new(@decoded);
}
sub parameters {
    my $self = shift;

    $self->env->{'donburi.request.merged'} ||= do {
        my $query = $self->query_parameters;
        my $body  = $self->body_parameters;
        Hash::MultiValue->new( $query->flatten, $body->flatten );
    };
}



( run in 0.411 second using v1.01-cache-2.11-cpan-26ccb49234f )