jQuery XML-RPC library
This is a small library that sits on top of jQuery for communicating with
XML-RPC services - without worrying about the horrible bloat of XML-RPC. Using
this library, you can pass JSON parameters to the library, and receive
responses in JSON. Encoding the JSON document is handled for you, intelligently
mapping types between the two languages.
Installing
Simply include the jQuery library, and this library in your page:
<script src="jquery-1.8.1.js"></script>
<script src="jquery.xmlrpc.js"></script>
This was built upon jQuery 1.8.1. It will probably work with old versions, and
will probably continue to work with new versions.
Using
The jQuery.xmlrpc
function is the main work-horse of this library. Call it
like so:
$.xmlrpc({
url: '/RPC2',
methodName: 'foo',
params: ['bar', 1, 4.6, true, [1, 2, 3], {name: 'value'}],
success: function(response, status, jqXHR) { },
error: function(jqXHR, status, error) { }
});
It takes all of the same arguments as jQuery.ajax
, so refer there for more
documentation. The two new keys added are:
methodName
This is method put in the <methodName>
element from XML-RPC. It should be a
string. The XML-RPC service you are communicating with will determine valid
method names you can call.
params
An array of parameters to send. Specify an empty array, or do not supply this
key at all if you do not want to send any parameters.
See the docs section on Encoding and Decoding XML-RPC Documents for
more information.
Getting data back
When the XML-RPC call returns, the contents of the <params>
element are
parsed into JSON and supplied to the success
callback of the AJAX call as the
first parameter, much like a JSON request.
Handling errors
If any HTTP errors occur during transport, the normal jQuery AJAX error
handling will be used. If the XML-RPC service successfully replies, but replies
with a <fault>
response, an $.xmlrpc.XmlRpcFault
is thrown. This error will
be sent as the third parameter to the error
callback of the AJAX call, as
with other errors.
Documentation
The full documentation can be found on Read The Docs.