اكس أم ال-أر بيه سي

XML-RPC هو بروتوكول لنداء الإجراء البعيد يستخدم صيغة XML لترميز البيانات ويستخدم HTTP لنقل البيانات وتنفيذ ندائاته.

تاريخ

XML-RPC تم أنشائها في 1998 من قبل Dave Winer من UserLand Software وMicrosoft.

الأستخدام

XML-RPC تم أنشائها لكي تكون أبسط وأكثر فهم من SOAP.

JSON-RPC مثل XML-RPC.

أنواع البيانات

الاسم مثال على التاج وصف
array

<source lang="xml"> <array>

 
   <value><i4>1404</i4></value>
   <value><string>بعض الكلمات هنا</string></value>
   <value><i4>1</i4></value>
 

</array> </source>

مصفوفة من القيم، بدون مفاتيح.
base64

<source lang="xml"> <base64>eW91IGNhbid0IHJlYWQgdGhpcyE=</base64> </source>

Base64-تشفير البيانات الثنائية
boolean

<source lang="xml"> <boolean>1</boolean> </source>

ثنائي قيمة ثنائية (0 أو 1)
date/time

<source lang="xml"> <dateTime.iso8601>19980717T14:08:55</dateTime.iso8601> </source>

وقت وتاريخ بصيقة ISO 8601
double

<source lang="xml"> <double>-12.53</double> </source>

رقم عشري (نوع بيانات)
integer

<source lang="xml"> <i4>42</i4> </source> أو <source lang="xml"> <int>42</int> </source>

أي رقم, رقمي (نوع بيانات)
string

<source lang="xml"> <string>أهلاً بالعالم!</string> </source>

نصوص وأرقام.
struct

<source lang="xml"> <struct>

 <member>
   <name>foo</name>
   <value><i4>1</i4></value>
 </member>
 <member>
   <name>bar</name>
   <value><i4>2</i4></value>
 </member>

</struct> </source>

Associative array
nil

<source lang="xml"> <nil/> </source>

Discriminated null value; an XML-RPC extension

أمثلة

مثال على طلب بال XML-RPC : <source lang="xml"> <?xml version="1.0"?> <methodCall>

 <methodName>examples.getStateName</methodName>
 <params>
   <param>
       <value><i4>40</i4></value>
   </param>
 </params>

</methodCall> </source>

مثال على استجابة من XML-RPC : <source lang="xml"> <?xml version="1.0"?> <methodResponse>

 <params>
   <param>
       <value><string>South Dakota</string></value>
   </param>
 </params>

</methodResponse> </source>

ناتج الخطا من XML-RPC: <source lang="xml"> <?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> </source>

تطبيقات

C++

Objective-C / GNUstep / Cocoa

Erlang

  • XML-RPC للغة Erlang: مكتبة HTTP 1.1 متوافقة مع XML-RPC للغة Erlang. تم تصميمها لكتابة عملاء وخدمات XML-RPC بسهولة في Erlang. المكتبة متوافقة مع معايير XML-RPC التي نشرها http://www.xmlrpc.org/

Java

XMPP

شاهد أيضاً

روابط

bg:XML-RPC ca:XML-RPC cs:XML-RPC de:XML-RPC XML-RPC]] es:XML-RPC fa:اکس‌ام‌ال-ارپی‌سی fr:XML-RPC it:XML-RPC ja:XML-RPC ko:XML-RPC pl:XML-RPC pt:XML-RPC ru:XML-RPC uk:XML-RPC zh:XML-RPC