XML-RPC

XML-RPC ist ein Protokoll des entfernten Verfahren-Anrufs (RPC), das XML verwendet, um seine Anrufe und HTTP als ein Transportmechanismus zu verschlüsseln. "XML-RPC" bezieht sich auch allgemein auf den Gebrauch von XML für den entfernten Verfahren-Anruf unabhängig vom spezifischen Protokoll. Dieser Artikel ist über das Protokoll genannt "XML-RPC".

Geschichte

XML-RPC, das Protokoll, wurde 1998 von Dave Winer von Software von UserLand und Microsoft geschaffen. Da neue Funktionalität, der Standard eingeführt wurde, der darin entwickelt ist, was jetzt SEIFE ist.

Der allgemeine Gebrauch von XML für den entfernten Verfahren-Anruf (RPC) wurde von Phillip Merrick, Stewart Allen und Joseph Lapp im April 2006 patentiert, Vorteil für eine provisorische Anwendung abgelegt im März 1998 fordernd. Das Patent wird webMethods zugeteilt, der in Fairfax, VA gelegen ist

Gebrauch

XML-RPC Arbeiten durch das Senden eines HTTP bitten zu einem Server, der das Protokoll durchführt. Der Kunde in diesem Fall ist normalerweise Software, die will eine einzelne Methode eines entfernten Systems nennen. Vielfache Eingangsrahmen können zur entfernten Methode passiert werden, ein Rückwert wird zurückgegeben. Die Parameter-Typen erlauben Nisten von Rahmen in Karten und Listen, so können größere Strukturen transportiert werden. Deshalb kann XML-RPC verwendet werden, um Gegenstände oder Strukturen sowohl wie eingegeben, als auch als Produktionsrahmen zu transportieren.

Die Identifizierung von Kunden zu Genehmigungszwecken kann mit populären HTTP Sicherheitsmethoden erreicht werden. Grundlegende Zugriffsbeglaubigung wird für die Identifizierung verwendet, HTTPS wird verwendet, wenn Identifizierung (über Zertifikate) und encrypted Nachrichten erforderlich ist. Beide Methoden können verbunden werden.

Im Vergleich mit dem REST, wohin Quellendarstellungen (Dokumente) übertragen werden, wird XML-RPC entworfen, um Methoden zu nennen.

XML-RPC ist einfacher, zu verwenden und zu verstehen, als SEIFE weil es

  • erlaubt nur eine Methode der Methode-Anordnung, wohingegen SEIFE vielfachen verschiedenen encodings definiert
  • hat ein einfacheres Sicherheitsmodell
  • verlangt (noch Unterstützung) die Entwicklung von WSDL Dienstbeschreibungen nicht, obwohl XRDL eine einfache Teilmenge der Funktionalität zur Verfügung stellt, die durch WSDL zur Verfügung gestellt ist

JSON-RPC ist XML-RPC ähnlich.

Datentypen

Allgemeine datatypes werden in ihre XML Entsprechungen mit Beispiel-Werten umgewandelt, die unten gezeigt sind:

Beispiele

Ein Beispiel einer typischen XML-RPC-Bitte würde sein:

</param>

</params>

</methodCall>

</Quelle>

Ein Beispiel einer typischen XML-RPC Antwort würde sein:

</param> </params>

</methodResponse>

</Quelle>

Eine typische XML-RPC Schuld würde sein:

</Mitglied>

</Mitglied>

</struct>

</Wert>

</Schuld>

</methodResponse></Quelle>

Kritik

Kritiker von XML-RPC behaupten, dass RPC-Anrufe mit einfachem XML gemacht werden können, (effektiv, bedeutet das REST), und dass XML-RPC keinen Wert über XML hinzufügt. Sowohl XML-RPC als auch XML verlangen ein Anwendungsniveau-Datenmodell, solcher als, welche Feldnamen im XML Diagramm oder den Parameter-Namen in XML-RPC definiert werden. Außerdem verwendet XML-RPC ungefähr 4mal die Zahl von Bytes im Vergleich zu einfachem XML, um dieselben Gegenstände zu verschlüsseln, der selbst im Vergleich zu JSON aufgebläht ist.

Durchführungen

Pythonschlange

C ++

Ziel-C / GNUstep / Kakao

Erlang

  • XML-RPC für Erlang: Das ist ein HTTP 1.1 entgegenkommende XML-RPC Bibliothek für Erlang. Es wird entworfen, um es leicht zu machen, XML-RPC Erlang Kunden und/oder Server zu schreiben. Die Bibliothek ist mit der XML-RPC Spezifizierung entgegenkommend, die durch http://www.xmlrpc.org / veröffentlicht ist

Java

JavaScript

XMPP

  • pyJabberXMLRPC: Pythonschlange-Klassen für XMPP
  • Geplapper-RPC: Über das Ausziehbare Nachrichtenübermittlungs- und Anwesenheitsprotokoll-Protokoll

Perl

PHP

Anderer

Siehe auch

  • Ajax, der (programmiert)
  • Teiltechnologien
  • Liste von Webdienst-Preiserhöhungssprachen
  • OPML
  • Webdienst

Links


Muschel / RPC
Impressum & Datenschutz