return $sock->connected unless $headers;
return $sock->connected unless $headers;
-warn dump( $headers );
-
warn "missing $_ header\n" foreach grep { ! defined $headers->{ lc $_ } } ( 'SOAPAction' );
my $body;
warn "missing $_ header\n" foreach grep { ! defined $headers->{ lc $_ } } ( 'SOAPAction' );
my $body;
read( $sock, $body, $len );
} elsif ( $headers->{'transfer-encoding'} =~ m/^chunked/i ) {
while ( my $len = <$sock> ) {
read( $sock, $body, $len );
} elsif ( $headers->{'transfer-encoding'} =~ m/^chunked/i ) {
while ( my $len = <$sock> ) {
-warn "chunked ",dump($len);
$len =~ s/[\r\n]+$//;
$len = hex($len);
last if $len == 0;
$len =~ s/[\r\n]+$//;
$len = hex($len);
last if $len == 0;
-warn "reading $len bytes\n";
read( $sock, my $chunk, $len );
read( $sock, my $chunk, $len );
-warn "|$chunk| $len == ", length($chunk);
$body .= $chunk;
my $padding = <$sock>;
$body .= $chunk;
my $padding = <$sock>;
-warn "padding ",dump($padding);
}
} else {
warn "empty request\n";
}
} else {
warn "empty request\n";