phpMan > man > XML::RPC(3pm)

Markdown | JSON | MCP    

NAME
    XML::RPC -- Pure Perl implementation for an XML-RPC client and server.

SYNOPSIS
    make a call to an XML-RPC server:

        use XML::RPC;

        my $xmlrpc = XML::RPC->new('http://betty.userland.com/RPC2');
        my $result = $xmlrpc->call( 'examples.getStateStruct', { state1 => 12, state2 => 28 } );

    create an XML-RPC service:

        use XML::RPC;
        use CGI;

        my $q      = new CGI;
        my $xmlrpc = XML::RPC->new();
        my $xml    = $q->param('POSTDATA');

        print $q->header( -type => 'text/xml', -charset => 'UTF-8' );
        print $xmlrpc->receive( $xml, \&handler );

        sub handler {
            my ( $methodname, @params ) = @_;
            return { you_called => $methodname, with_params => \@params };
        }

DESCRIPTION
    XML::RPC module provides simple Pure Perl methods for XML-RPC communication. It's goals are
    simplicity and flexibility. XML::RPC uses XML::TreePP for parsing.

CONSTRUCTOR AND OPTIONS
  $xmlrpc = XML::RPC->new();
    This constructor method returns a new XML::RPC object. Usable for XML-RPC servers.

  $xmlrpc = XML::RPC->new( 'http://betty.userland.com/RPC2', %options );
    Its first argument is the full URL for your server. The second argument is for options passing
    to XML::TreePP, for example: output_encoding => 'ISO-8859-1' (default is UTF-8).

METHODS
  $xmlrpc->call( 'method_name', @arguments );
    This method calls the provides XML-RPC server's method_name with @arguments. It will return the
    server method's response.

  $xmlrpc->receive( $xml, \&handler );
    This parses an incoming XML-RPC methodCall and call the \&handler subref with parameters:
    $methodName and @parameters.

  $xmlrpc->xml_in();
    Returns the last XML that went in the client.

  $xmlrpc->xml_out();
    Returns the last XML that went out the client.

CUSTOM TYPES
  $xmlrpc->call( 'method_name', { data => sub { { 'base64' => encode_base64($data) } } } );
    When passing a CODEREF to a value XML::RPC will simply use the returned hashref as a type =>
    value pair.

ERROR HANDLING
    To provide an error response you can simply die() in the \&handler function. Also you can set
    the $XML::RPC::faultCode variable to a (int) value just before dieing.

PROXY SUPPORT
    Default XML::RPC will try to use LWP::Useragent for requests, you can set the environment
    variable: CGI_HTTP_PROXY to set a proxy.

LIMITATIONS
    XML::RPC will not create "bool", "dateTime.iso8601" or "base64" types automatically. They will
    be parsed as "int" or "string". You can use the CODE ref to create these types.

AUTHOR
    Niek Albers, http://www.daansystems.com/

COPYRIGHT AND LICENSE
    Copyright (c) 2007-2008 Niek Albers. All rights reserved. This program is free software; you can
    redistribute it and/or modify it under the same terms as Perl itself.

Generated by phpMan v3.0-1-g415f66e-dirty Author: Che Dong Under GNU General Public License
2026-06-05 16:44 @216.73.217.105
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!