XML-RPC - 響應格式



響應與請求非常相似,但多了幾個要點。如果響應成功 - 找到了過程、正確執行並返回了結果 - 那麼 XML-RPC 響應看起來會非常像請求,只不過 methodCall 元素被 methodResponse 元素替換,並且沒有 methodName 元素

<?xml version="1.0"?>
<methodResponse>
   <params>
      <param>
         <value><double>18.24668429131</double></value>
      </param>
   </params>
</methodResponse>
  • 一個 XML-RPC 響應只能包含一個引數。

  • 該引數可以是陣列或結構,因此可以返回多個值。

  • 在響應中總是需要返回一個值。一個“成功值” - 可能是一個布林值設為真 (1)。

與請求類似,響應都打包在 HTTP 中並帶有 HTTP 標頭。所有 XML-RPC 響應都使用 200 OK 響應程式碼,即使訊息中包含錯誤。標頭使用與請求類似的常見結構,一個典型的標頭集可能如下所示

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 只需要 HTTP 1.0 支援,但相容 HTTP 1.1。

  • Content-Type 必須設為 text/xml。

  • Content-Length 標頭指定響應的長度(以位元組為單位)。

一個完整的響應(包含標頭和響應有效內容)如下所示

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>

當響應從 XML-RPC 伺服器傳遞到 XML-RPC 客戶端後,連線將關閉。後續請求需要作為單獨的 XML-RPC 連線傳送。

廣告
© . All rights reserved.