你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

连接到 WFS 服务

Web 地理要素服务 (WFS) 是一项 web 服务,用于查询具有由开放地理空间信息联盟 (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 地理要素服务 (WFS) 并在地图上呈现返回的地理要素。 有关此示例的源代码,请参阅简单 WFS 示例源代码

显示地图上 WFS 覆盖结果的屏幕截图。

支持的筛选器

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 服务资源管理器示例源代码

屏幕截图显示了一个简单工具,可用于在 Azure Maps 上浏览 WFS 服务。

若要访问在未启用 CORS 的终结点上托管的 WFS 服务,可以将启用 CORS 的代理服务传递到 WFS 客户端的 proxyService 选项中,如以下示例所示。

//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='
});

后续步骤

详细了解本文中使用的类和方法:

有关可向地图添加的更多代码示例,请参阅以下文章: