use LWP::UserAgent; use JSON::RPC::LWP; use Net::SSL (); use JSON::RPC::Client; $ENV{HTTPS_DEBUG} = 1; # CA cert peer verification $ENV{HTTPS_CA_FILE} = 'ca_file'; $ENV{HTTPS_CA_DIR} = 'ca_dir'; # Client PKCS12 cert support $ENV{HTTPS_PKCS12_FILE} = 'pkcs12 cert'; $ENV{HTTPS_PKCS12_PASSWORD} = 'password'; my $ua = eval { LWP::UserAgent->new() } or die "Could not make user-agent! $@"; $ua->ssl_opts( verify_hostname => 0); print "JSON RPC CONNECTION\n"; my $rpc = JSON::RPC::Client->new( ua => $ua, version => '2.0' ); my $result = $rpc->call( 'https://...', {method=>'echo', params=>['param']}); print $result->result, "\n";