XML-RPC HOWTO

Eric Kidd

Source Builders

eric.kidd@pobox.com

And Other Contributors

0.8.0, 2001-04-12

Revision History
Revision 0.8.02001-04-12
Updated section on common interfaces. Added pointer to XML-RPC.Net information.
Revision 0.7.02001-04-03
Added section on C++ proxy classes.
Revision 0.6.02001-02-02
Added sections on Ruby, K and common interfaces.
Revision 0.5.02001-01-23
Initial version.

Describes how to use XML-RPC to implement clients and servers in a variety of languages. Provides example code in Perl, Python, C, C++, Java, PHP and other languages. Includes sections on Zope and KDE 2.0. Applies to all operating systems with XML-RPC support.


Table of Contents
1. Legal Notice
2. What is XML-RPC?
2.1. How it Works
2.2. Supported Data Types
2.3. The History of XML-RPC
3. XML-RPC vs. Other Protocols
3.1. XML-RPC vs. CORBA
3.2. XML-RPC vs. DCOM
3.3. XML-RPC vs. SOAP
4. Common XML-RPC Interfaces
4.1. Introspection: Discovering Server APIs
4.2. Boxcarring: Sending Multiple Requests at Once
5. A Sample API: sumAndDifference
6. Using XML-RPC with Perl
6.1. A Perl Client
6.2. A Stand-Alone Perl Server
6.3. A CGI-Based Perl Server
7. Using XML-RPC with Python
7.1. A Python Client
8. Using XML-RPC with C and C++
8.1. A C Client
8.2. A C++ Client
8.3. A C++ Client with Proxy Classes
8.4. A CGI-Based C Server
9. Using XML-RPC with Java
9.1. A Java Client
9.2. A Stand-Alone Java Server
10. Using XML-RPC with PHP
10.1. A PHP Client
10.2. A PHP Server
11. Using XML-RPC with Microsoft .NET
12. Using XML-RPC with Ruby
12.1. A Ruby Client
12.2. A Ruby Server
13. Using XML-RPC with Proprietary Languages
13.1. Using XML-RPC with K
14. Applications with Built-in XML-RPC Support
14.1. Zope
14.2. KDE 2.0
15. About This Document
15.1. New Versions of This Document
15.2. Contributors to the XML-RPC HOWTO
15.3. Submitting Other Snippets