こんな感じ?
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request::Common;
my $req = POST(
"http://example.com/",
Content => { key1 => 'val1', key2 => 'val2' },
); # HTTP::Request
$req->header( Host => $req->uri->host_port );
$req->uri->host("localhost:8888");
print "-- request --\n";
print $req->as_string;
my $ua = LWP::UserAgent->new;
my $res = $ua->request($req);
print "-- response --\n";
print $res->content;

そうそうそんな感じ!
どんな感じ?