libro
www.tuyano.com
Google Apps Scriptプログラミング [中級編]

SOAP/WSDLによるWebサービスを利用する (2/4)

作成:2012-07-17 08:44
更新:2012-07-17 08:44

■SoapServiceについて

では、Google Apps Scriptに用意されている「Soap Service」について簡単に説明しましょう。――これは、「SoapSevice」というオブジェクトとして用意されています。ここからメソッドを呼び出してWSDLのオブジェクトを取得します。

では、SoapServiceから指定のアドレスに問い合わせを行い、結果を受け取るまでの一連の流れを以下に整理しておきましょう。

●Wsdlの取得
変数 = SoapSevice.wsdl( アドレス );
wsdlメソッドは、WSDLによるサービスを公開しているアドレスを引数に指定して呼び出します。これにより、そのアドレスに問い合わせるための「Wsdl」オブジェクトが返されます。

●WsdlServiceの取得
変数 = 《Wsdl》.getService( サービス名 );
Wsdlから、Wsdlのサービスにアクセスするための「WsdlService」オブジェクトを作成します。引数には、サービスの公開アドレスをテキストで指定します。

●SoapServiceから直接WsdlServiceを得る
変数 = SoapSevice.wsdl( アドレス , サービス名 );
先の2つの文は、実は1つにまとめて行うこともできます。wsdlメソッドでは、引数にWsdlのアドレスを指定しましたが、この時、第2引数として利用するサービス名を指定すれば、そのサービスを利用すWsdlServiceオブジェクトがダイレクトに得られます。

●利用可能なサービス名を得る
変数 = 《Wsdl》.getServiceNames();
指定のサイトでどんなサービスが利用可能かわからない……。というような場合には、getServiceNamesでサービス名を調べることができます。これはWsdlで利用可能なサービス名をテキスト配列として返すものです。ここで得られたサービス名を指定してWsdlServiceを取得するとよいでしょう。


――これで、サービスであるWsdlServiceオブジェクトが取得されました。このオブジェクトには、そのアドレスで利用可能なサービス名がメソッドとして実装されます。例えば、「abc」というサービスが用意されているとしたら、取得したWsdlSergiveを使い、「○○.abc( パラメータ);」というようにして呼び出せば、そのサービスにアクセスし、結果を得ることができるようになるのです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「Google Apps Scriptプログラミング [中級編]」に戻る