你当前正在访问 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 |
---|---|---|---|---|
collection
|
path | True |
|
特定集合的标识符 (名称) |
dataset
|
path | True |
|
要从中查询的数据集的标识符。 |
geography
|
path | True |
|
此参数指定 Azure Maps Creator 资源所在的位置。 有效值是我们和欧盟。 |
api-version
|
query | True |
|
Azure Maps API 的版本号。 |
bbox
|
query |
|
仅选择了与所提供的边界框相交的几何图形的特征。
|
|
filter
|
query |
|
筛选表达式以搜索具有给定集合中特定属性值的功能。 仅支持标量类型和等于运算符的功能属性。 这是一个特殊参数,其中参数名称是区分大小写的属性名称。 此参数的方案为 {property name}={property value}。 除非“filter”是集合中的属性名称之一,否则不应将“filter”用作参数名称。 若要搜索“name”属性值为“21N13”的功能,请使用“name=21N13”。 支持多个筛选器,应表示为多个查询参数。 例如,=&= 字符串值区分大小写。 |
|
limit
|
query |
|
可选限制参数限制响应文档中呈现的功能数。 仅计算响应文档中集合第一级别的功能。 不应计算显式请求的功能中包含的嵌套对象。
|
请求头
Name | Required | Type | Description |
---|---|---|---|
x-ms-client-id |
|
指定哪个帐户旨在与 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"
}
]
}
定义
Error |
资源管理错误附加信息。 |
Error |
错误详细信息。 |
Error |
错误响应 |
Extended |
扩展了 numberReturned 和 links 数组的有效 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
指定 |
Geo |
有效的 |
Geo |
有效的 |
WFSEndpoint |
指向其他 WFS 终结点的链接 |
ErrorAdditionalInfo
资源管理错误附加信息。
Name | Type | Description |
---|---|---|
info |
|
其他信息。 |
type |
|
其他信息类型。 |
ErrorDetail
错误详细信息。
Name | Type | Description |
---|---|---|
additionalInfo |
错误附加信息。 |
|
code |
|
错误代码。 |
details |
错误详细信息。 |
|
message |
|
错误消息。 |
target |
|
错误目标。 |
ErrorResponse
错误响应
Name | Type | Description |
---|---|---|
error |
错误对象。 |
ExtendedGeoJsonFeatureCollection
扩展了 numberReturned 和 links 数组的有效 GeoJSON FeatureCollection
对象类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
features |
包含有效 |
|
links |
指向其他 WFS 终结点的链接。 |
|
numberReturned |
|
返回的功能数。 |
ontology |
|
此数据集的本体版本。 |
type |
指定 |
GeoJsonFeature
有效的 GeoJSON Feature
对象类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
featureType |
|
功能的类型。 该值取决于当前功能所属的数据模型。 某些数据模型可能具有空值。 |
geometry | GeoJsonGeometry: |
有效的 |
id |
|
功能的标识符。 |
type |
string:
|
指定 |
GeoJsonGeometry
有效的 GeoJSON
几何图形对象。 该类型必须是七种有效的 GeoJSON 几何类型之一 - Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
type |
指定 |
GeoJsonGeometryCollection
有效的 GeoJSON GeometryCollection
对象类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
geometries | GeoJsonGeometry[]: |
包含有效 |
type |
string:
|
指定 |
GeoJsonLineString
有效的 GeoJSON LineString
几何图形类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
coordinates |
|
几何图形的 |
type |
string:
|
指定 |
GeoJsonMultiLineString
有效的 GeoJSON MultiLineString
几何图形类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
coordinates |
|
几何图形的 |
type |
string:
|
指定 |
GeoJsonMultiPoint
有效的 GeoJSON MultiPoint
几何图形类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
coordinates |
|
几何图形的 |
type |
string:
|
指定 |
GeoJsonMultiPolygon
有效的 GeoJSON MultiPolygon
对象类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
coordinates |
|
包含有效 |
type |
string:
|
指定 |
GeoJsonObjectType
指定 GeoJSON
类型:FeatureCollection。
Name | Type | Description |
---|---|---|
FeatureCollection |
|
|
GeoJsonPoint
有效的 GeoJSON Point
几何图形类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
coordinates |
|
A |
type |
string:
|
指定 |
GeoJsonPolygon
有效的 GeoJSON Polygon
几何图形类型。 有关详细信息,请参阅 RFC 7946 。
Name | Type | Description |
---|---|---|
coordinates |
|
|
type |
string:
|
指定 |
WFSEndpointLink
指向其他 WFS 终结点的链接
Name | Type | Description |
---|---|---|
href |
|
链接目标。 |
hreflang |
|
指示取消引用链接的结果的语言的提示。 |
rel |
|
关系类型。 |
title |
|
用于标记链接的目标,以便它可以用作可读标识符 (,例如,内容语言标头字段指示的语言中的菜单项) ((如果存在) )。 |
type |
|
一个提示,指示取消引用链接的结果的媒体类型。 |