Dancer-Plugin-RPC
view release on metacpan or search on metacpan
example/lib/Client/MetaCpan.pm view on Meta::CPAN
package Client::MetaCpan;
use Moo;
use JSON;
with 'Client::HTTP';
sub call {
my $self = shift;
my ($query) = @_;
$query =~ s{::}{-}g;
my $params = $http->www_form_urlencode("q=$query");
(my $endpoint = $self->base_uri->as_string) =~ s{/+$}{};
my $response = $self->client->get("$endpoint/?$params");
my $content = eval { decode_json($response->{content}) };
return $content if !$@;
return { error => $@, data => $response->{content} };
}
use namespace::autoclean;
1;
=head1 COPYRIGHT
(c) MMXVII - Abe Timmerman <abeltje@cpan.org>
=cut
( run in 0.716 second using v1.01-cache-2.11-cpan-e93a5daba3e )