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

من ويكيبيديا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث

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

تاريخ[عدل]

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

الأستخدام[عدل]

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

JSON-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>
الأساس 64-تشفير البيانات الثنائية
boolean
<boolean>1</boolean>
ثنائي قيمة ثنائية (0 أو 1)
date/time
<dateTime.iso8601>19980717T14:08:55</dateTime.iso8601>
وقت وتاريخ بصيقة ايزو 8601
double
<double>-12.53</double>
رقم عشري (نوع بيانات)
integer
<i4>42</i4>

أو

<int>42</int>
أي رقم، رقمي (نوع بيانات)
string
<string>أهلاً بالعالم!</string>
نصوص وأرقام.
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/>
Discriminated null value; an XML-RPC extension

أمثلة[عدل]

مثال على طلب بال XML-RPC :

<?xml version="1.0"?>
<methodCall>
  <methodName>examples.getStateName</methodName>
  <params>
    <param>
        <value><i4>40</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>

تطبيقات[عدل]

C++[عدل]

Objective-C / GNUstep / Cocoa[عدل]

Erlang[عدل]

Java[عدل]

XMPP[عدل]

انظر أيضاً[عدل]

روابط[عدل]

مراجع[عدل]

  1. ^ Vizard, Michael; Walsh, Jeff (1998-06-29). "DataChannel's Dave Pool talks about shaping the role of XML to suit different needs". Infoworld. مؤرشف من الأصل في 16 سبتمبر 1999. اطلع عليه بتاريخ 08 ديسمبر 2015. الوسيط |CitationClass= تم تجاهله (مساعدة)
  2. ^ Udell, Jon (1999-06-07). "Exploring XML-RPC: DCOM? CORBA? RMI? Why Not Just XML-RPC?". Byte. مؤرشف من الأصل في 04 مارس 2000. اطلع عليه بتاريخ 17 نوفمبر 2015. الوسيط |CitationClass= تم تجاهله (مساعدة)
  3. ^ Walsh, Jeff (1999-07-10). "Microsoft spearheads protocol push". Infoworld. مؤرشف من الأصل في 14 سبتمبر 1999. اطلع عليه بتاريخ 17 نوفمبر 2015. الوسيط |CitationClass= تم تجاهله (مساعدة)