サーバーに対して HTTP リクエストを行って、そのレスポンスを解析できるすべてのアプリケーションで、サーバー オブジェクト エクステンション (SOE) を使用できます。 SOE の入出力は、数値、テキスト文字列、XML/JSON オブジェクトといった単純なタイプです。 使用する側のアプリケーションは、SOE の実装に使用される API を認識する必要はありません。 アプリケーションに必要とされるのは、SOE に送信する入力を準備し、SOE から返される出力を解析して理解することです。
多くの場合、ArcGIS REST Services Directory で SOE をテストしてから (REST SOE を使用すると仮定)、クライアント アプリケーションで SOE を使用するためのコードを記述します。
Services Directory での SOE のテスト
SOE に送信するのは単純なタイプであるため、REST Web サービスの SOE を Services Directory でテストできます。 マップ サービスで SOE を有効にしたら、Services Directory でサービスのページに移動します。 ページの下部にある [Supported Extensions] の下にその SOE がリスト表示されます (SOE が表示されない場合は、ArcGIS Server 管理者が REST キャッシュをクリアしているか確認してください)。
Services Directory で SOE をクリックすると、公開したリソースと処理をクリックして調べることができるようになります。 処理をクリックすると、SOE のリクエストとレスポンスのテストに使用できる入力ボックスが表示されます。 単純な JSON または HTML レスポンスが返される必要があります。
クライアント アプリケーションでの SOE の使用
SOE を REST Web サービスとして公開した場合、その SOE を Esri の Web API とモバイル API で使用できます。 使用する API にかかわらず、SOE Web サービスを操作するには次の要件があります。
-
Web サービスからリクエストを行う - パラメーターのリストの作成およびサーバーへの完成した URL の送信が必要
-
レスポンスの処理を行う - レスポンスの形式の理解およびアプリケーションで有益な処理を行うための情報の解析方法の理解が必要
コード パターンは類似していますが、SOE の操作に使用するクラスによって ArcGIS API for JavaScript が異なります。 たとえば、API で、SOE のすべての入力パラメーターを保持する JSON を使用して変数を設定する場合は、 esri.request() メソッドを使用して Web サービスを呼び出します。 このレスポンスは JSON オブジェクトです。