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

WFS - Get Features

适用于: 查看定价

Creator 可以使用 Azure Maps API 和 SDK 基于专用室内地图数据开发应用程序。 本文介绍适用于 Azure Maps Creator 的概念和工具。

Web 功能服务 (WFS) API 是 Creator 的一部分。 WFS API 遵循用于查询数据集的功能的开放地理空间联盟 API 标准。 数据集由多个特征集合组成。 特征集合是基于通用架构的类似类型的特征的集合。 获取功能 API 返回给定集合中的功能列表。

GET https://{geography}.atlas.microsoft.com/wfs/datasets/{datasetId}/collections/{collectionId}/items?api-version=2.0
GET https://{geography}.atlas.microsoft.com/wfs/datasets/{datasetId}/collections/{collectionId}/items?api-version=2.0&limit={limit}&bbox={bbox}&filter={filter}

URI 参数

Name In Required Type Description
collectionId
path True
  • string

特定集合的标识符 (名称)

datasetId
path True
  • string

要从中查询的数据集的标识符。

geography
path True
  • string

此参数指定 Azure Maps Creator 资源所在的位置。 有效值是我们和欧盟。

api-version
query True
  • string

Azure Maps API 的版本号。

bbox
query
  • array

仅选择了与所提供的边界框相交的几何图形的特征。

  • 左下角,坐标轴 1 * 左下角,坐标轴 2 * 右上角,坐标轴 1 * 右上角,坐标轴 2 坐标轴 2 值坐标引用系统为 WGS84 经度/纬度 (http://www.opengis.net/def/crs/OGC/1.3/CRS84) ,除非参数 bbox-crs中指定了不同的坐标引用系统。 对于 WGS84 经度/纬度,值在大多数情况下是最小经度、最小纬度、最大经度和最大纬度序列。 但是,如果框跨时间线,则 (最西的框边缘) 的第一个值大于 (最东框边缘的第三个值) 。
filter
query
  • string

筛选表达式以搜索具有给定集合中特定属性值的功能。 仅支持标量类型和等于运算符的功能属性。 这是一个特殊参数,其中参数名称是区分大小写的属性名称。 此参数的方案为 {property name}={property value}。 除非“filter”是集合中的属性名称之一,否则不应将“filter”用作参数名称。 若要搜索“name”属性值为“21N13”的功能,请使用“name=21N13”。 支持多个筛选器,应表示为多个查询参数。 例如,=&= 字符串值区分大小写。

limit
query
  • integer

可选限制参数限制响应文档中呈现的功能数。 仅计算响应文档中集合第一级别的功能。 不应计算显式请求的功能中包含的嵌套对象。

  • 最小值 = 1 * 最大值 = 500 * 默认值 = 10

请求头

Name Required Type Description
x-ms-client-id
  • string

指定哪个帐户旨在与 Azure AD 安全模型结合使用。 它表示Azure Maps帐户的唯一 ID,可以从Azure Maps管理平面帐户 API 检索。 若要在Azure Maps中使用 Azure AD 安全性,请参阅以下文章以获取指导。

响应

Name Type Description
200 OK

正常

Other Status Codes

发生了意外错误。

安全性

AADToken

这些是 Azure Active Directory OAuth2 流。 与 Azure 基于角色的访问控制配对时,它可用于控制对 Azure Maps REST API 的访问。 Azure 基于角色的访问控制用于指定对一个或多个Azure Maps资源帐户或子资源的访问。 任何用户、组或服务主体都可以通过内置角色或由一个或多个权限组成的自定义角色授予访问权限,以Azure Maps REST API。

若要实现方案,建议查看 身份验证概念。 总之,此安全定义提供了一种解决方案,用于通过能够针对特定 API 和范围进行访问控制的对象对应用程序 () 建模。

备注

  • 此安全定义需要使用x-ms-client-id标头来指示应用程序请求访问哪些Azure Maps资源。 可以从 地图管理 API 获取此功能。

Authorization URL特定于 Azure 公有云实例。 主权云具有唯一的授权 URL 和 Azure Active Directory 配置。 * Azure 基于角色的访问控制是通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 从 Azure 管理平面配置的。 * Azure Maps Web SDK 的使用允许针对多个用例配置应用程序的基于配置的设置。

  • 目前,Azure Active Directory v1.0 或 v2.0 支持工作、学校和来宾,但不支持个人帐户。

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

这是在Azure 门户或使用 PowerShell、CLI、Azure SDK 或 REST API 创建Azure Maps帐户时预配的共享密钥。

使用此密钥,任何应用程序都可以访问所有 REST API。 换句话说,此密钥可用作颁发密钥的帐户中的主密钥。

对于公开的应用程序,建议使用机密客户端应用程序方法来访问 Azure Maps REST API,以便安全地存储密钥。

Type: apiKey
In: query

SAS Token

这是通过 azure 管理平面通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 从Azure Maps资源上的列表 SAS 操作创建的共享访问签名令牌。

使用此令牌,任何应用程序都有权使用 Azure 基于角色的访问控制进行访问,并精细控制特定令牌的过期、速率和区域 () 。 换句话说,SAS 令牌可用于允许应用程序以比共享密钥更安全的方式控制访问。

对于公开的应用程序,建议在 地图帐户资源 上配置允许的源的特定列表,以限制呈现滥用,并定期续订 SAS 令牌。

Type: apiKey
In: header

示例

GetFeatures

Sample Request

GET https://us.atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?api-version=2.0&limit=1&bbox=-122, 47, -120, 46

Sample Response

{
  "type": "FeatureCollection",
  "ontology": "Facility-2.0",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              139.6330405782921,
              35.45768668610856
            ],
            [
              139.63296283234274,
              35.45778390425868
            ],
            [
              139.63308672404617,
              35.45785022906202
            ],
            [
              139.6331451691671,
              35.45777714569986
            ],
            [
              139.6331274703629,
              35.45776767074717
            ],
            [
              139.63314677109963,
              35.45774353588138
            ],
            [
              139.6330405782921,
              35.45768668610856
            ]
          ]
        ]
      },
      "properties": {
        "originalId": "ddbbb583-4621-4e11-8859-299d1057e843",
        "categoryId": "CTG10",
        "isOpenArea": false,
        "navigableBy": [
          "pedestrian"
        ],
        "isRoutable": false,
        "routeThroughBehavior": "allowed",
        "nonPublic": false,
        "levelId": "LVL18",
        "occupants": [],
        "addressId": "DIR16",
        "addressRoomNumber": "",
        "name": "21N13",
        "nameSubtitle": "",
        "nameAlt": ""
      },
      "id": "UNIT39",
      "featureType": ""
    }
  ],
  "numberReturned": 1,
  "links": [
    {
      "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?api-version=2.0&limit=1",
      "rel": "self"
    },
    {
      "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit?api-version=2.0",
      "rel": "data"
    },
    {
      "href": "https://us.atlas.microsoft.com/wfs/dataset/218fda98-e638-0edf-5ef7-28491ff3bed4/collections/unit/items?n=PMRG4ZLYOQRDUMJMEJYHEZLWEI5C2ML5&api-version=2.0&limit=1",
      "rel": "next"
    }
  ]
}

定义

ErrorAdditionalInfo

资源管理错误附加信息。

ErrorDetail

错误详细信息。

ErrorResponse

错误响应

ExtendedGeoJsonFeatureCollection

扩展了 numberReturned 和 links 数组的有效 GeoJSON FeatureCollection 对象类型。 有关详细信息,请参阅 RFC 7946

GeoJsonFeature

有效的 GeoJSON Feature 对象类型。 有关详细信息,请参阅 RFC 7946

GeoJsonGeometry

有效的 GeoJSON 几何图形对象。 该类型必须是七种有效的 GeoJSON 几何类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 有关详细信息,请参阅 RFC 7946

GeoJsonGeometryCollection

有效的 GeoJSON GeometryCollection 对象类型。 有关详细信息,请参阅 RFC 7946

GeoJsonLineString

有效的 GeoJSON LineString 几何图形类型。 有关详细信息,请参阅 RFC 7946

GeoJsonMultiLineString

有效的 GeoJSON MultiLineString 几何图形类型。 有关详细信息,请参阅 RFC 7946

GeoJsonMultiPoint

有效的 GeoJSON MultiPoint 几何图形类型。 有关详细信息,请参阅 RFC 7946

GeoJsonMultiPolygon

有效的 GeoJSON MultiPolygon 对象类型。 有关详细信息,请参阅 RFC 7946

GeoJsonObjectType

指定 GeoJSON 类型:FeatureCollection。

GeoJsonPoint

有效的 GeoJSON Point 几何图形类型。 有关详细信息,请参阅 RFC 7946

GeoJsonPolygon

有效的 GeoJSON Polygon 几何图形类型。 有关详细信息,请参阅 RFC 7946

WFSEndpointLink

指向其他 WFS 终结点的链接

ErrorAdditionalInfo

资源管理错误附加信息。

Name Type Description
info
  • object

其他信息。

type
  • string

其他信息类型。

ErrorDetail

错误详细信息。

Name Type Description
additionalInfo

错误附加信息。

code
  • string

错误代码。

details

错误详细信息。

message
  • string

错误消息。

target
  • string

错误目标。

ErrorResponse

错误响应

Name Type Description
error

错误对象。

ExtendedGeoJsonFeatureCollection

扩展了 numberReturned 和 links 数组的有效 GeoJSON FeatureCollection 对象类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
features

包含有效 GeoJSON Feature 对象的列表。

links

指向其他 WFS 终结点的链接。

numberReturned
  • integer

返回的功能数。

ontology
  • string

此数据集的本体版本。

type

指定 GeoJSON 类型:FeatureCollection。

GeoJsonFeature

有效的 GeoJSON Feature 对象类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
featureType
  • string

功能的类型。 该值取决于当前功能所属的数据模型。 某些数据模型可能具有空值。

geometry GeoJsonGeometry:

有效的 GeoJSON 几何图形对象。 该类型必须是七种有效的 GeoJSON 几何类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 有关详细信息,请参阅 RFC 7946

id
  • string

功能的标识符。

type string:
  • Feature

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonGeometry

有效的 GeoJSON 几何图形对象。 该类型必须是七种有效的 GeoJSON 几何类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 有关详细信息,请参阅 RFC 7946

Name Type Description
type

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonGeometryCollection

有效的 GeoJSON GeometryCollection 对象类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
geometries GeoJsonGeometry[]:

包含有效 GeoJSON 几何对象的列表。 请注意 ,GeoJSON 中的坐标以 x、y 顺序 (经度、纬度) 。

type string:
  • GeometryCollection

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonLineString

有效的 GeoJSON LineString 几何图形类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
coordinates
  • array[]

几何图形的 GeoJson LineString 坐标。

type string:
  • LineString

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonMultiLineString

有效的 GeoJSON MultiLineString 几何图形类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
coordinates
  • array[]

几何图形的 GeoJson MultiLineString 坐标。

type string:
  • MultiLineString

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonMultiPoint

有效的 GeoJSON MultiPoint 几何图形类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
coordinates
  • array[]

几何图形的 GeoJson MultiPoint 坐标。

type string:
  • MultiPoint

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonMultiPolygon

有效的 GeoJSON MultiPolygon 对象类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
coordinates
  • array[]

包含有效 GeoJSON Polygon 对象的列表。 请注意 ,GeoJSON 中的坐标以 x、y 顺序 (经度、纬度) 。

type string:
  • MultiPolygon

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonObjectType

指定 GeoJSON 类型:FeatureCollection。

Name Type Description
FeatureCollection
  • string

GeoJSON FeatureCollection 对象。

GeoJsonPoint

有效的 GeoJSON Point 几何图形类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
coordinates
  • number[]

A Position 是包含两个或多个元素的数字数组。 前两个元素是 经度纬度,正是按顺序排列的。 海拔高度 是可选的第三个元素。 有关详细信息,请参阅 RFC 7946

type string:
  • Point

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

GeoJsonPolygon

有效的 GeoJSON Polygon 几何图形类型。 有关详细信息,请参阅 RFC 7946

Name Type Description
coordinates
  • array[]

GeoJson Polygon几何图形类型的坐标。

type string:
  • Polygon

指定 GeoJSON 类型。 必须是九种有效的 GeoJSON 对象类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、GeometryCollection、Feature 和 FeatureCollection。

指向其他 WFS 终结点的链接

Name Type Description
href
  • string

链接目标。

hreflang
  • string

指示取消引用链接的结果的语言的提示。

rel
  • string

关系类型。

title
  • string

用于标记链接的目标,以便它可以用作可读标识符 (,例如,内容语言标头字段指示的语言中的菜单项) ((如果存在) )。

type
  • string

一个提示,指示取消引用链接的结果的媒体类型。