- my $raw_data = ref($post_data) ? make_form(%$post_data) : $post_data;
- post_https( $self->server, $self->port, $self->path, $headers,
- $raw_data, $opts->{"Content-Type"} );
- }
- elsif ( $ssl_module eq 'Crypt::SSLeay' ) {
-
- import HTTP::Request::Common qw(POST);
-
- my $url = 'https://' . $self->server;
- $url .= ':' . $self->port
- unless $self->port == 443;
- $url .= $self->path;
-
- if ($DEBUG) {
- warn $url;
- }
-
- my $ua = new LWP::UserAgent;
- foreach my $hdr ( keys %headers ) {
- $ua->default_header( $hdr => $headers{$hdr} );
- }
-
- my $res;
- if ( ref($post_data) ) {
- $res = $ua->request( POST( $url, [%$post_data] ) );
- }
- else {
- my $req = new HTTP::Request( 'POST' => $url );
- $req->content_type( $opts->{"Content-Type"} );
- $req->content($post_data);
- $res = $ua->request($req);
- }
-
- (
- $res->content, $res->code,
- map { $_ => $res->header($_) } $res->header_field_names
- );
- }
- else {
- die "unknown SSL module $ssl_module";
- }