Loading AI tools
来自维基百科,自由的百科全书
XML-RPC是一個遠端程序呼叫(Remote Procedure Call,RPC)的分散式計算協定,通過XML將呼叫函數封裝,並使用HTTP協定作為傳送機制。[1]
XML-RPC發表於1998年,由UserLand Software(UserLand Software)的Dave Winer及Microsoft共同發表[2]。後來在新的功能不斷被引入下,這個標準慢慢演變成為今日的SOAP協定。
XML-RPC協定是已登記的專利項目,由Phillip Merrick、Stewart Allen及Joseph Lapp共同持有,於1998年3月提出申請,指其將用於一個構想中的應用程式,並於2006年4月獲得接納。現時這個專利由位於美國維珍尼亞州費爾法克斯的webMethods使用[3]。
XML-RPC透過向裝置了這個協定的伺服器發出HTTP請求。發出請求的用戶端一般都是需要向遠端系統要求呼叫的軟件。
以下的例子為日常的資料類型在轉化為等同的XML後的面貌:
名稱 | 標記範例 | 描述 |
---|---|---|
array |
<array>
<data>
<value><i4>1404</i4></value>
<value><string>Something here</string></value>
<value><i4>1</i4></value>
</data>
</array>
|
|
base64 |
<base64>eW91IGNhbid0IHJlYWQgdGhpcyE=</base64>
|
|
boolean |
<boolean>1</boolean>
|
布林型邏輯值 (0 或 1) |
date/time |
<dateTime.iso8601>19980717T14:08:55</dateTime.iso8601>
|
|
double |
<double>-12.53</double>
|
雙倍精確浮點數 |
integer |
<i4>42</i4>
or <int>42</int>
|
整數 |
string |
<string>Hello world!</string>
|
字串,必須遵守XML encoding(XML encoding)的格式。 |
struct |
<struct>
<member>
<name>foo</name>
<value><i4>1</i4></value>
</member>
<member>
<name>bar</name>
<value><i4>2</i4></value>
</member>
</struct>
|
結構體 |
nil |
<nil/>
|
以下為一個尋常的 XML-RPC 請求的範例:
<?xml version="1.0"?>
<methodCall>
<methodName>examples.getStateName</methodName>
<params>
<param>
<value><i4>40</i4></value>
</param>
</params>
</methodCall>
相對於上述請求,以下為一個尋常回應的範例:
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><string>South Dakota</string></value>
</param>
</params>
</methodResponse>
以下為一個尋常的 XML-RPC 錯誤:
<?xml version="1.0"?>
<methodResponse>
<fault>
<value>
<struct>
<member>
<name>faultCode</name>
<value><int>4</int></value>
</member>
<member>
<name>faultString</name>
<value><string>Too many parameters.</string></value>
</member>
</struct>
</value>
</fault>
</methodResponse>
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.