XML-RPC - Formato de Resposta
As respostas são muito parecidas com pedidos, com algumas variações extras. Se a resposta for bem-sucedida - o procedimento foi encontrado, executado corretamente e retornou resultados - então a resposta XML-RPC se parecerá muito com uma solicitação, exceto que o elemento methodCall é substituído por um elemento methodResponse e não há elemento methodName :
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><double>18.24668429131</double></value>
</param>
</params>
</methodResponse>
Uma resposta XML-RPC pode conter apenas um parâmetro.
Esse parâmetro pode ser uma matriz ou uma estrutura, portanto, é possível retornar vários valores.
É sempre necessário retornar um valor em resposta. Um "valor de sucesso" - talvez um Booleano definido como verdadeiro (1).
Como as solicitações, as respostas são empacotadas em HTTP e têm cabeçalhos HTTP. Todas as respostas XML-RPC usam o código de resposta 200 OK, mesmo se houver uma falha na mensagem. Os cabeçalhos usam uma estrutura comum semelhante à das solicitações, e um conjunto típico de cabeçalhos pode ser assim:
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 requer apenas suporte HTTP 1.0, mas HTTP 1.1 é compatível.
O Content-Type deve ser definido como text / xml.
O cabeçalho Content-Length especifica o comprimento da resposta em bytes.
Uma resposta completa, com cabeçalhos e uma carga útil de resposta, seria assim:
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>
Depois que a resposta é entregue do servidor XML-RPC para o cliente XML-RPC, a conexão é fechada. As solicitações de acompanhamento precisam ser enviadas como conexões XML-RPC separadas.