저는 Perl의 초보자입니다. 에서 실행중인 JSON-RPC 서버가 http : // localhost : 19000이며, checkEmail() 메서드를 호출해야합니다.Perl - JSON :: RPC :: Client를 사용할 때 'HASH 참조가 아닙니다'오류가 발생했습니다.
use JSON::RPC::Client;
my $client = new JSON::RPC::Client;
my $url = 'http://localhost:19000';
my $callobj = {
method => 'checkEmail',
params => [ '[email protected]' ],
};
my $res = $client->call($url, $callobj);
if($res) {
if ($res->is_error) {
print "Error : ", $res->error_message;
}
else {
print $res->result;
}
}
else {
print $client->status_line;
}
나는 다음과 같은 알려줍니다 그것을 실행하려고 할 때 :
는perl ./check_ac.pl
Not a HASH reference at /usr/local/share/perl/5.10.1/JSON/RPC/Client.pm line 193.
UPD는 :
전체 스택 추적 :
perl -MCarp::Always ./check_ac.pl
Not a HASH reference at /usr/local/share/perl/5.10.1/JSON/RPC/Client.pm line 193
JSON::RPC::ReturnObject::new('JSON::RPC::ReturnObject', 'HTTP::Response=HASH(0x9938d48)', 'JSON=SCALAR(0x96f1518)') called at /usr/local/share/perl/5.10.1/JSON/RPC/Client.pm line 118
JSON::RPC::Client::call('JSON::RPC::Client=HASH(0x944a818)', 'http://localhost:19000', 'HASH(0x96f1578)') called at ./check_ac.pl line 11
'perl -MCarp :: Always ./check_ac를 사용하십시오.pl'을 사용하여 전체 스택 추적을 얻고 코드에 문제가있는 위치에 대한 더 나은 단서를 제공합니다. – mob
"Carp/Always.pm을 찾을 수 없습니다"라고 표시됩니다. MCarp :: Always를 사용하여 설치를 시도했지만 항상 찾을 수 없습니다. –
MCp :: Always가 아닌 Carp :: Always를 설치하십시오. -M은 명령 행에서 "사용"을 의미합니다. – gpojd