1. ホーム
  2. web-services

[解決済み] なぜSOAPベースのサービスではなく、RESTを使うのか?[クローズド]

2022-04-28 03:18:57

質問

今日、RESTに関する興味深いデモに参加しましたが、RESTがSOAPベースのサービススタックよりも使用や実装がとにかく良く、簡単であるという理由は一つも思い浮かびませんでした(提示もされませんでした)。

現実の世界で、SOAPベースのサービスではなくRESTを使う理由は何ですか?

解決方法は?

オーバーヘッドが少ない(すべての呼び出しをSOAPエンベロープで包む必要がない)。

重複を減らす (HTTPはすでにDELETE、PUT、GETなどの操作を表現しており、他の方法でSOAPエンベロープで表現する必要がある)。

より標準化 - HTTP操作はよく理解されており、一貫して動作します。 SOAPの実装によっては、きめ細かくなる可能性があります。

より人間にとって読みやすく、テストしやすい(ブラウザだけでSOAPをテストするのは難しい)。

XMLを使う必要がない(SOAPでも使う必要はあるが、すでにエンベロープのパースを行っているのでほとんど意味がない)。

ライブラリのおかげでSOAPは(ある意味)簡単になりました。 しかし、私が指摘したように、あなたはその下にある多くの冗長性を抽象化しています。理論的には、SOAPは、同様のことを行うレイヤーの上に乗るのを避けるために、他のトランスポートを通過することができますが、実際には、あなたが行うほぼすべてのSOAP作業は、HTTPを介して行われます。