SOAPについて

SOAPについて

名前は聞いたことはあったけどよく知らなかったSOAPについて
業務で使うことになったので基本的なことを調べてみた。

概要

SOAP (プロトコル)-wikipedia)

SOAP(ソープ)は、コンピュータネットワーク内のWebサービスの実装において、構造化された情報を交換するための通信プロトコルの仕様である。拡張性、中立性、独立性を導入することを目的とする。XML-RPCから発展した、XML Webサービスのための、XMLベースのRPCプロトコルである。

XMLを利用したHTTP通信手法。
メソッドのインターフェイスをクライアントとサーバで共有するイメージ??

WSDL

WSDL 【 Web Services Description Language 】

WSDLとは、Webサービスを外部のソフトウェアから接続・利用するための仕様(インターフェース)を記述することができる言語。

SOAPではWSDLという形式でインターフェイス情報を定義して公開することができる。
記述できる情報は
* message要素 → 引数、戻り値の定義
* part要素 → 値の定義(名前, 型など)
* portType要素 → メソッドの定義

など

RESTとの比較

正しい知識としてのSOAP-Qiita

設計思想の違い
SOAPとRESTの一番の違いは、最初の設計思想が SOAP=同期通信バンザイ、REST=非同期バンザイであったところかもしれません。

そのうちPythonでサーバとクライアントの実装をしてみる。