Algunas instrucciones antiguas (2001) para acceder a XML-RPC usando Perl. También échale un vistazo al tutorial de Perl XML-RPC en xml-rpc.com !
Según un cliente la siguiente información no está actualizada ;-)
Aparentemente el módulo no estará disponible jamás, en lugar de este, puede
utilizar el módulo SOAP::Lite que
no solo proporciona SOAP, también la funcionalidad de cliente XML-RPC.
Un pequeño recorte de código para acceder a OpenGroupware.org:
use XMLRPC::Lite;
use Data::Dumper; $Data::Dumper::Terse = 1; $Data::Dumper::Indent = 1;
>
my $fkt = "person.getById";
my $para = "10000";
>
my $result = XMLRPC::Lite
-> proxy('http://root:rootpwd@165.0.0.10:20000')
-> $fkt($para);
print Dumper($result->paramsall), '';
Gracias a Mr. Hanusch por proporcinarnos esta información !
Para usar XMLRPC con Perl, primero necesita estos módulos Perl instalados en su sistema (testeado en SuSE 7.2) :
Si ha desempaquetado y descomprimido el paquete, solo necesita teclear los siguientes comandos para instalar el cliente en su sistema :
Para mostrarte como se usa Perl y XMLRPC para acceder al servidor OGo, le mostramos un pequeño código de ejemplo que muestra los pasos esenciales.
#!/usr/bin/perl
# 'include' the XMLRPC client
use Frontier::Client;
# init the client with the target url, login & password
$client = Frontier::Client->new( url =>
"http://login:password@your.server.com:10000");
# send a message to fetch persons with a name like 'zaphod',
# store the result in @result
@result = $client->call('person.fetch',"name like \'*zaphod*\'");
# check how many records we received
$count = @{$result[0]};
# iterate over the results
for $i (0 .. $count-1)
{
# get the current element
$element = $result[0]->[$i];
# get the name of the current element
$name = $element->{"name"};
}