6.3.90.900
XML-RPC
This package is based on the XML-RPC package by Matt Jadud and Noel Welsh of Untyped
This library implements the XML-RPC protocol, a popular protocol for interface to Internet
services such as blog engines, as specified at
http://www.xmlrpc.com/spec.
1 Clients
The client library provides a few forms for defining servers and
their supported endpoints.
Returns a function configured to make XML-RPC requests to the given
URL. The function accepts a string, the name of the method, and
returns a function of any arguments which calls the method with the
given arguments.
This example calls the examples.getStateName method on the server
betty.userland.com:
Examples:
|
|
(define get-state-name (betty 'examples.getStateName)) | |
|
|
> (get-state-name 42) |
tcp-connect: connection failed |
detail: host not found |
address: betty.userland.com |
port number: 80 |
step: 1 |
system error: Name or service not known; errno=-2 |
2 Servers
The server library provides
Returns a function from HTTP requests encoding XML-RPC queries to HTTP responses encoding XML-RPC answers
that computes answers by calling the procedure associated with the XML-RPC method name in the exports
hash table.
Examples:
|
|
|
|
(define (run-server!) | (serve/servlet xml-rpc-adder | #:port 8080 | #:servlet-path "/" | #:command-line? #t)) | |
|
|
|
|
3 Errors
A subtype of exn, this exception is raised whenever the XML-RPC library
encounters an error.
A subtype of
exn:xml-rpc, this exception is raised when the XML-RPC
server responds to the client with a fault. The
code is an integer
containing the fault code returned by the server. The fault message
returned by the server is contained in the exception message.