NAME
AnyEvent::HTTP::ScopedClient - AnyEvent based https://github.com/technoweenie/node-scoped-http-client
VERSION
version 0.0.1
SYNOPSIS
my $client = AnyEvent::HTTP::ScopedClient->new('http://example.com');
$client->request('GET', sub {
my ($body, $hdr) = @_; # $body is undef if error occured
return if ( !$body || !$hdr->{Status} =~ /^2/ );
# do something;
});
# shorcut for GET
$client->get(sub {
my ($body, $hdr) = @_; # $body is undef if error occured
return if ( !$body || !$hdr->{Status} =~ /^2/ );
# do something;
});
# Content-Type: application/x-www-form-urlencoded
$client->post(
{ foo => 1, bar => 2 }, # note this.
sub {
my ($body, $hdr) = @_; # $body is undef if error occured
return if ( !$body || !$hdr->{Status} =~ /^2/ );
# do something;
}
);
# application/x-www-form-urlencoded post request
$client->post(
"foo=1&bar=2" # and note this.
sub {
my ($body, $hdr) = @_; # $body is undef if error occured
return if ( !$body || !$hdr->{Status} =~ /^2/ );
# do something;
}
);
# Content-Type: application/json
use JSON::XS;
$client->header('Content-Type', 'application/json')
->post(
encode_json({ foo => 1 }),
sub {
my ($body, $hdr) = @_; # $body is undef if error occured
return if ( !$body || !$hdr->{Status} =~ /^2/ );
# do something;
}
);
$client->header('Accept', 'application/json')
->query({ key => 'value' })
->query('key', 'value')
->get(sub {
my ($body, $hdr) = @_; # $body is undef if error occured
return if ( !$body || !$hdr->{Status} =~ /^2/ );
# do something;
});
DESCRIPTION
AnyEvent::HTTP wrapper
SEE ALSO
https://github.com/technoweenie/node-scoped-http-client
AUTHOR
Hyungsuk Hong <hshong@perl.kr>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Hyungsuk Hong.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.