リモートエコープロシージャを呼び出すと、txjsonrpc モジュールを使用して Python で記述された rpc サーバーに呼び出しが到達します。しかし、このスクリプトは次のように述べています。
/usr/local/lib/perl/5.14.2/Moose/Meta の文字オフセット 0 ("read failed: at /us..." の前) にある、配列、オブジェクト、数値、文字列、アトムのいずれでもない不正な形式の JSON 文字列/Method/Delegation.pm 110行目
何か案が?コードはここにあります:
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";