XML-RPC

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск

XML-RPC (сокр. от англ. Extensible Markup Language Remote Procedure Call — XML-вызов удалённых процедур) — стандарт/протокол вызова удалённых процедур, основанный на XML, является прародителем SOAP, отличается исключительной простотой применения. XML-RPC, как и любой другой интерфейс RPC, определяет набор стандартных типов данных и команд, которые программист может использовать для доступа к функциональности другой программы, находящейся на другом компьютере в сети.

Содержание

Краткая история

Протокол XML-RPC был изначально разработан Дэйвом Винером из компании «UserLand Software» в сотрудничестве с Майкрософт в 1998 году. Однако корпорация Майкрософт вскоре сочла этот протокол слишком упрощённым, и начала расширять его функциональность. После нескольких циклов по расширению функциональности, появилась система, ныне известная как SOAP. Позднее Майкрософт начала широко рекламировать и внедрять SOAP, а изначальный XML-RPC был отвергнут. Но, несмотря на отвержение Майкрософт, стандарт XML-RPC очаровал многих программистов своей необычайной простотой и, за счёт этого, существует по сей день и даже постепенно набирает популярность.

Типы данных

Имя типа Пример тега Описание типа
array
 <array>
   <data>
     <value><i4>1404</i4></value>
     <value><string>Что-нибудь здесь</string></value>
     <value><i4>1</i4></value>
   </data>
 </array>
Массив величин, без ключей
base64
<base64>eW91IGNhbid0IHJlYWQgdGhpcyE=</base64>
Кодированные в 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>
Целое число
string
<string>Здравствуй, Мир!</string>
Строка символов (в той же кодировке, что и весь XML-документ)
struct
 <struct>
   <member>
     <name>Что-то</name>
     <value><i4>1</i4></value>
   </member>
   <member>
     <name>Ещё что-то</name>
     <value><i4>2</i4></value>
   </member>
 </struct>
Массив величин, с ключами
nil
<nil/>
Нулевая (пустая) величина — это расширение XML-RPC

Примеры

Типичный пример запроса XML-RPC:

 <?xml version="1.0"?>
 <methodCall>
   <methodName>examples.getStateName</methodName>
   <params>
     <param>
         <value><i4>41</i4></value>
     </param>
   </params>
 </methodCall>

Типичный пример ответа на запрос XML-RPC:

 <?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>

См. также

Ссылки

bg:XML-RPC ca:XML-RPC cs:XML-RPC de:XML-RPC en:XML-RPC es:XML-RPC fr:XML-RPC it:XML-RPC ja:XML-RPC ko:XML-RPC pl:XML-RPC pt:XML-RPC uk:XML-RPC zh:XML-RPC

Источник — «http://www.sbup.com/wiki/XML-RPC»
Личные инструменты

Served in 0.116 secs.