|
||||||||||
| 前のページ 1 2 | ||||||||||
| PHP NuSOAPライブラリ | ||||||||||
|
NuSOAPはLGPLライセンスの下、http://dietrich.ganx4.com/nusoap/で無料で公開されている、開発者がSOAP Webサービスを運用するため作られたクラスです。require()を用いてnusoap.phpをスクリプトに読み込ませるだけで、使用できます。 このライブラリを利用して、クライアントアプリケーションを簡単に作成することができます。SOAPメッセージを構築しリモートAPIに送信する代わりに、必要な変数をクラスに渡し、HTTP、または一般的なTCP/IPプロトコル上にSOAPでエンコーディングされた変数を送信するよう指定します。例を見てみましょう。
<?php
はじめにNuSOAP を読み込み、連想配列$paramsの中にRPCのために使用するパラメータを格納します。次に、2つの引数($remoteと$wsdl)を渡すオブジェクトを作成します。 SOAPサーバは$remote(文字列)、および$wsdl(サーバがWSDLドキュメントを使用するかどうかをあらわすブール値)を処理します。このようにWSDL(Web Services Description Language)ドキュメントは、メソッドやプロパティなどWebサービスについての情報を含んでいます。 |
||||||||||
| WSDLを利用する場合 | ||||||||||
|
特に複雑なWebサービスの場合、WSDLが利用されます。一度オブジェクトを作成したら、後はRPCを実行すればよいだけです。$paramsに格納された、リモートメソッド名とパラメータを指定して、call()メソッド呼び出します。 NuSOAPは自動的に結果を取得し、連想配列$resultに保持します。WSDLベースのサーバで運用する場合($wsdl はTRUE に設定しておきます)、一度作成すれば、同様に、$client はリモートメソッドを呼び出すことができます。
<?php
これによりコードがシンプルになります。最初にプロキシクライアント($proxy)を作成します。すると、NuSOAPのcall()メソッドを使用しなくとも、プロキシを使用するWSDLドキュメントに記述されているどのようなリモートメソッドでも呼び出すことができます。NuSOAPで、基本的なリモートインターフェースを設定する方法を見てみましょう。
<?php
ライブラリを呼び込み、サーバオブジェクトを作成して利用可能にしたいメソッドを登録します。その後、同じ名前で関数を宣言し、オペレーションを実行し、結果を返します。最後に、受信したHTTP POSTデータをすべてサーバオブジェクトへ渡し、自動的に出力が生成されます。 |
||||||||||
|
前のページ 1 2 |
||||||||||
|
|
||||||||||
|
|
||||||||||
|
||||||||||
|
|
||||||||||
|
||||||||||
|
|
||||||||||
|
||||||||||

