Webサービスの実装者がなぜどちらかを選択するのか、私は本当に理解していません。XML-RPCは一般的に古いシステムに見られますか?これを理解する上での助けをいただければ幸いです。
回答:
違いは?
SOAPはより強力であり、ソフトウェアツールベンダー(MSFT .NET、Java Enterpriseエディションなど)に非常に好まれています。
SOAPは長い間(2001-2007ish)、SOAに最適なプロトコルと見なされていました。xml-rpcはそれほど多くありません。RESTはプロトコルではありませんが、新しいSOAの最愛の人です。
SOAPはより冗長ですが、より機能的です。
一部の古いものではSOAPはサポートされていません。たとえば、従来のASP用のSOAPライブラリはありません(私が見つけたものです)。
SOAPはPythonでは十分にサポートされていません。XML-RPCは、標準ライブラリでPythonを強力にサポートしています。
SOAPはドキュメントレベルの転送をサポートしますが、xml-rpcは値の転送に関するものですが、構造体やリストなどの構造を転送することはできます。
xm-rpcは、実際にはプログラム間で言語に依存しない転送に関するものです。これは主にhttp / httpsを経由します。SOAPメッセージは電子メールを経由することもできます。
xml-rpcはよりユニキシです。それはあなたが物事を簡単に行うことを可能にし、あなたが何をしているのかを知っているとき、ターミナルテキストエディタを使用しているときでさえ、高品質のウェブサービスを展開することは非常に速いです。そのようにSOAPを行うのは動物園です。それを実現するには、本当に優れたIDEが必要です。
ただし、Fortune 500のIT求人を争っている場合は、SOAPを知っていると、履歴書/履歴書の見栄えがよくなります。
xml-rpcには、ASCII以外の文字セットに関するいくつかの問題があります。
XML-RPCは名前付きパラメーターをサポートしていません。それらは正しい順序である必要があります。SOAPについてはよくわかりませんが、そう思います。
Kate Rhodesは、http://weblog.masukomi.org/2006/11/21/xml-rpc-vs-soapで違いについて素晴らしいエッセイを書いています。