2008-09-17 3 views

Antwort

74

Unterschiede?

Die xml-rpc-Spezifikation passt auf 1 Seite 6 Seiten. Die SOAP 1.2 Spezifikation kostet Sie ein 500 Seiten Ries 44 Seiten.

SOAP ist leistungsfähiger und wird von Software-Tool-Anbietern (MSFT .NET, Java Enterprise Edition, diese Art von Dingen) sehr bevorzugt.

SOAP wurde für lange Zeit (2001-2007) als Protokoll der Wahl für SOA angesehen. xml-rpc nicht so sehr. REST ist der neue SOA Liebling, obwohl es kein Protokoll ist.

SOAP ist ausführlicher, aber leistungsfähiger.

SOAP wird in einigen älteren Dateien nicht unterstützt. Zum Beispiel, keine SOAP-Bibliotheken für klassisches ASP (das ich finden konnte).

SOAP wird in Python nicht gut unterstützt. XML-RPC hat große Unterstützung in Python, in der Standardbibliothek.

SOAP unterstützt Dokumentebene übertragen, während XML-RPC mehr über Werte Übertragung, obwohl es Strukturen wie structs übertragen können, Listen, usw.

xm-rpc wirklich Programm ist sprachunabhängig Transfer zu programmieren . Es geht hauptsächlich über http/https. SOAP-Nachrichten können auch über E-Mails gesendet werden.

xml-rpc ist mehr unixy. Es ermöglicht Ihnen, Dinge einfach zu tun, und wenn Sie wissen, was Sie tun, ist es sehr schnell, qualitativ hochwertige Web-Services bereitzustellen, selbst wenn Sie Terminaltext-Editoren verwenden. SOAP ist so ein Zoo; Sie brauchen wirklich eine gute IDE, um es machbar zu machen.

Das Wissen um SOAP wird jedoch viel besser auf Ihrem Lebenslauf aussehen, wenn Sie um einen Fortune 500 IT-Job wetteifern.

xml-rpc hat einige Probleme mit nicht-ASCII-Zeichensätzen.

Bearbeitet: Ich wollte nur hinzufügen, dass XML-RPC benannte Parameter nicht unterstützt. Sie müssen in der richtigen Reihenfolge sein. Nicht sicher über SOAP, aber denke schon.

+1

Für SOAP mit Python gibt es das ZSI-Paket. Es ist ziemlich gut, aber Sie brauchen unbedingt eine WSDL. – edomaur

+1

Ich glaube, das alte SOAP Toolkit hatte Unterstützung für "Classic ASP". Mehr noch, Sie können Ihre bevorzugte .NET-Sprache verwenden, um eine COM-Komponente zu erstellen, die eine Service-Referenz umschließt, so dass Classic ASP sogar einen modernen Web-Service nutzen kann. –

+0

@Mark Harrison und Christopher: Was meinst du "SOAP so zu tun ist ein Zoo" .Leider konnte ich das Wort "Zoo" nicht verstehen. Bitte beschreiben Sie es ... – Saravanan

11

einfach zu den anderen Antworten hinzuzufügen, ich möchte Dich ermutigen, zu Ist-Textdarstellungen von SOAP und XML-RPC-Aufrufen zu suchen, vielleicht durch eine Erfassung mit Ätherisch. Das ganze Argument "XML-RPC ist einfacher" macht wenig Sinn, bis man sieht, wie unglaublich ausführlich ein SOAP-Aufruf ist. Viele der ziemlich populären Webseiten da draußen scheuen SOAP als ihre API aufgrund der Menge an Bandbreite, die es verbrauchen würde, wenn die Leute es intensiv nutzen würden.

Verwandte Themen