Staging
v0.8.1
v0.8.1
https://github.com/python/cpython
Revision 24f7c89e6387ae538c493babd3e62c548b834b4a authored by cvs2svn on 07 October 2002, 21:38:58 UTC, committed by cvs2svn on 07 October 2002, 21:38:58 UTC
1 parent be36d02
Tip revision: 24f7c89e6387ae538c493babd3e62c548b834b4a authored by cvs2svn on 07 October 2002, 21:38:58 UTC
This commit was manufactured by cvs2svn to create tag 'r222b1'.
This commit was manufactured by cvs2svn to create tag 'r222b1'.
Tip revision: 24f7c89
libsimplexmlrpc.tex
\section{\module{SimpleXMLRPCServer} ---
Basic XML-RPC server}
\declaremodule{standard}{SimpleXMLRPCServer}
\modulesynopsis{Basic XML-RPC server implementation.}
\moduleauthor{Brian Quinlan}{brianq@activestate.com}
\sectionauthor{Fred L. Drake, Jr.}{fdrake@acm.org}
The \module{SimpleXMLRPCServer} module provides a basic server
framework for XML-RPC servers written in Python. The server object is
based on the \class{\refmodule{SocketServer}.TCPServer} class,
and the request handler is based on the
\class{\refmodule{BaseHTTPServer}.BaseHTTPRequestHandler} class.
\begin{classdesc}{SimpleXMLRPCServer}{addr\optional{,
requestHandler\optional{, logRequests}}}
Create a new server instance. The \var{requestHandler} parameter
should be a factory for request handler instances; it defaults to
\class{SimpleXMLRPCRequestHandler}. The \var{addr} and
\var{requestHandler} parameters are passed to the
\class{\refmodule{SocketServer}.TCPServer} constructor. If
\var{logRequests} is true (the default), requests will be logged;
setting this parameter to false will turn off logging. This class
provides methods for registration of functions that can be called by
the XML-RPC protocol.
\end{classdesc}
\begin{classdesc}{SimpleXMLRPCRequestHandler}{}
Create a new request handler instance. This request handler
supports \code{POST} requests and modifies logging so that the
\var{logRequests} parameter to the \class{SimpleXMLRPCServer}
constructor parameter is honored.
\end{classdesc}
\subsection{SimpleXMLRPCServer Objects \label{simple-xmlrpc-servers}}
The \class{SimpleXMLRPCServer} class provides two methods that an
application can use to register functions that can be called via the
XML-RPC protocol via the request handler.
\begin{methoddesc}[SimpleXMLRPCServer]{register_function}{function\optional{,
name}}
Register a function that can respond to XML-RPC requests. The
function must be callable with a single parameter which will be the
return value of \function{\refmodule{xmlrpclib}.loads()} when called
with the payload of the request. If \var{name} is given, it will be
the method name associated with \var{function}, otherwise
\code{\var{function}.__name__} will be used. \var{name} can be
either a normal or Unicode string, and may contain characters not
legal in Python identifiers, including the period character.
\end{methoddesc}
\begin{methoddesc}[SimpleXMLRPCServer]{register_instance}{instance}
Register an object which is used to expose method names which have
not been registered using \method{register_function()}. If
\var{instance} contains a \method{_dispatch()} method, it is called
with the requested method name and the parameters from the request;
the return value is returned to the client as the result. If
\var{instance} does not have a \method{_dispatch()} method, it is
searched for an attribute matching the name of the requested method;
if the requested method name contains periods, each component of the
method name is searched for individually, with the effect that a
simple hierarchical search is performed. The value found from this
search is then called with the parameters from the request, and the
return value is passed back to the client.
\end{methoddesc}
Computing file changes ...