XML-RPC - Format Respon

Tanggapan mirip dengan permintaan, dengan beberapa perubahan tambahan. Jika respons berhasil - prosedur ditemukan, dijalankan dengan benar, dan mengembalikan hasil - maka respons XML-RPC akan terlihat seperti permintaan, kecuali bahwa elemen methodCall diganti dengan elemen methodResponse dan tidak ada elemen methodName :

<?xml version="1.0"?>
<methodResponse>
   <params>
      <param>
         <value><double>18.24668429131</double></value>
      </param>
   </params>
</methodResponse>
  • Respons XML-RPC hanya dapat berisi satu parameter.

  • Parameter itu bisa berupa array atau struct, jadi dimungkinkan untuk mengembalikan beberapa nilai.

  • Itu selalu diperlukan untuk mengembalikan nilai sebagai tanggapan. Sebuah "nilai sukses" - mungkin Boolean disetel ke true (1).

Seperti halnya permintaan, tanggapan dikemas dalam HTTP dan memiliki header HTTP. Semua tanggapan XML-RPC menggunakan kode tanggapan 200 OK, bahkan jika terdapat kesalahan dalam pesan. Header menggunakan struktur umum yang mirip dengan request, dan kumpulan header biasanya terlihat seperti:

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 hanya membutuhkan dukungan HTTP 1.0, tetapi HTTP 1.1 kompatibel.

  • Jenis Konten harus disetel ke teks / xml.

  • Header Panjang Konten menentukan panjang respons dalam byte.

Respons lengkap, dengan header dan payload respons, akan terlihat seperti ini:

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>

Setelah respons dikirim dari server XML-RPC ke klien XML-RPC, koneksi ditutup. Permintaan tindak lanjut perlu dikirim sebagai koneksi XML-RPC terpisah.