Multiple XML-RPC calls over the same connection?

Diez B. Roggisch deetsNOSPAM at
Fri Oct 29 20:49:50 CEST 2004


> The standard pattern for doing that is having an xmlrpc call
> that you supply username/password/other credentials to.  It
> then responds with a pair of tokens.  You then use them as
> part of the URL where usernames and passwords are usually
> used.  For example:
>    sp=xmlrpclib.ServerProxy("")
>    c1,c2=sp.login("username", "password", "etc")
>    sp=xmlrpclib.ServerProxy("" % (c1,c2))
>    sp.DoSomething(1,2)
>    sp.DoSomethingElse(3,4)
> This will work fine with the current client side xmlrpclib.  If
> you server side is written in Python then you will need to make
> a derived request handler that grabs and verifies the authentication
> headers before calling the intended routines (except for the login
> function :-)

While I have to admit that it is a nice trick, its something I expect beeing
part of a IPC-standard - otherwise, it renders the standard short of beeing

There are alternatives out there, like corba, which allow for much better
implementations - in terms of ease of use from the api side as well as
performance and interoperability. Having to tweak a standard to make it
work in a certainly common pattern strikes me as awkward. Unfortunately, I
have to use xmlrpc myself as php corba support isn't too good - but I keep
it to a minimum, and its dead ugly...


Diez B. Roggisch

More information about the Python-list mailing list