XML-RPC - Formato risposta
Le risposte sono molto simili alle richieste, con alcuni colpi di scena in più. Se la risposta ha esito positivo (la procedura è stata trovata, eseguita correttamente e ha restituito risultati), la risposta XML-RPC sarà molto simile a una richiesta, tranne per il fatto che l' elemento methodCall è sostituito da un elemento methodResponse e non è presente alcun elemento methodName :
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><double>18.24668429131</double></value>
</param>
</params>
</methodResponse>
Una risposta XML-RPC può contenere solo un parametro.
Quel parametro può essere un array o una struttura, quindi è possibile restituire più valori.
È sempre necessario restituire un valore in risposta. Un "valore di successo", forse un valore booleano impostato su true (1).
Come le richieste, le risposte sono impacchettate in HTTP e hanno intestazioni HTTP. Tutte le risposte XML-RPC utilizzano il codice di risposta 200 OK, anche se nel messaggio è contenuto un errore. Le intestazioni utilizzano una struttura comune simile a quella delle richieste e un tipico insieme di intestazioni potrebbe essere simile a:
HTTP/1.1 200 OK
Date: Sat, 06 Oct 2001 23:20:04 GMT
Server: Apache.1.3.12 (Unix)
Connection: close
Content-Type: text/xml
Content-Length: 124
XML-RPC richiede solo il supporto HTTP 1.0, ma HTTP 1.1 è compatibile.
Il Content-Type deve essere impostato su text / xml.
L'intestazione Content-Length specifica la lunghezza della risposta in byte.
Una risposta completa, con entrambe le intestazioni e un payload di risposta, sarebbe simile a:
HTTP/1.1 200 OK
Date: Sat, 06 Oct 2001 23:20:04 GMT
Server: Apache.1.3.12 (Unix)
Connection: close
Content-Type: text/xml
Content-Length: 124
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><double>18.24668429131</double></value>
</param>
</params>
</methodResponse>
Dopo che la risposta è stata consegnata dal server XML-RPC al client XML-RPC, la connessione viene chiusa. Le richieste di follow-up devono essere inviate come connessioni XML-RPC separate.