次の方法で共有


WFS サービスへの接続

Web Feature Service (WFS) とは空間データに対してクエリを実行するための Web サービスであり、Open Geospatial Consortium (OGC) によって定義されている、標準化された API を備えています。 空間 IO モジュールで WfsClient クラスを使用すると、開発者は WFS サービスに接続し、サービスからデータにクエリを実行できます。

この WfsClient クラスは、次の機能をサポートしています。

  • サポートされているバージョン: 1.0.01.1.02.0.0

  • サポートされているフィルター演算子: バイナリ比較、論理、数値、値、bbox

  • 要求は HTTP GET のみを使用して作成されます。

  • サポートされている操作:

    操作 説明
    GetCapabilities 有効な WFS 操作とパラメーターを使用してメタデータ ドキュメントを生成します
    GetFeature データ ソースからフィーチャーの選択を返します
    DescribeFeatureType サポートされているフィーチャーの種類を返します

WFS クライアントの使用

空間 IO モジュールで atlas.io.ogc.WfsClient クラスを使用すると、WFS サービスに対してクエリを実行し、応答を GeoJSON オブジェクトに変換することが簡単になります。 この GeoJSON オブジェクトはその後、他のマッピングのために使用できます。

単純な WFS の例」のサンプルは、Web Feature Service (WFS) へのクエリを簡単に実行し、返されたフィーチャーをマップにレンダリングする方法を示しています。 このサンプルのソース コードについては、単純な WFS の例のソース コードを参照してください。

A screenshot that shows the results of a WFS overlay on a map.

サポートされているフィルター

WFS 標準の仕様では、OGC フィルターが使用されます。 WFS クライアントは、呼び出されるサービスで次のフィルターもサポートしているという前提でサポートしています。 カスタム フィルター文字列は CustomFilter クラスに渡すことができます。

論理演算子

  • And
  • Or
  • Not

値演算子

  • GmlObjectId
  • ResourceId

数値演算子

  • Add
  • Sub
  • Mul
  • Div

比較演算子

  • PropertyIsEqualTo
  • PropertyIsNotEqualTo
  • PropertyIsLessThan
  • PropertyIsGreaterThan
  • PropertyIsLessThanOrEqualTo
  • PropertyIsGreaterThanOrEqualTo
  • PropertyIsLike
  • PropertyIsNull
  • PropertyIsNil
  • PropertyIsBetween

WFS サービス エクスプローラー

WFS サービス エクスプローラー」のサンプルは、Azure Maps で WFS サービスを探索するための簡単なツールです。 このサンプルのソース コードについては、WFS サービス エクスプローラーのソース コードを参照してください。

A screenshot that shows a simple tool for exploring WFS services on Azure Maps.

非 CORS 対応のエンドポイントでホストされている WFS サービスにアクセスするには、次の例に示すように、WFS クライアントの proxyService オプションに CORS 対応のプロキシ サービスを渡します。

//Create the WFS client to access the service and use the proxy service settings
client = new atlas.io.ogc.WfsClient({
    url: url,
    proxyService: window.location.origin + '/YourCorsEnabledProxyService.ashx?url='
});

次のステップ

この記事で使われているクラスとメソッドの詳細については、次を参照してください。

マップに追加できる他のコード サンプルについては、次の記事をご覧ください。