你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Tileset - Validate Configuration
使用 验证磁贴集配置。
提交验证配置请求
API Validate Configuration
是一个 HTTP POST
请求,用于根据提供的 datasetId
验证指定的磁贴集配置。
POST https://{geography}.atlas.microsoft.com/tilesets:validateConfiguration?api-version=2023-03-01-preview&datasetId={datasetId}
URI 参数
名称 | 在 | 必需 | 类型 | 说明 |
---|---|---|---|---|
geography
|
path | True |
string |
此参数指定 Azure Maps Creator 资源所在的位置。 有效值为 us 和 eu。 |
api-version
|
query | True |
string |
Azure Maps API 的版本号。 |
dataset
|
query | True |
string |
磁贴集创建 API 用于检索特征以生成磁贴的唯 |
请求头
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
x-ms-client-id |
string |
指定要与Microsoft Entra ID安全模型结合使用的帐户。 它表示Azure Maps帐户的唯一 ID,可从Azure Maps管理平面帐户 API 检索。 若要在 Azure Maps 中使用Microsoft Entra ID安全性,请参阅以下文章以获取指导。 |
请求正文
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
layers | True |
<string,
Layer |
层的名称及其配置选项。 配置层对象包含键值对,这些键值对将图块层的名称与其配置相关联。 对于每个键值对,键是层的名称,值为包含层的配置和选项的 LayerObject。 每个层都必须有一个名称。 这是最终图块集中数据层的唯一标识符。 在任何图块集中,每个层名称都必须是唯一的。 层名称必须是仅包含下划线 (_) 和字母数字字符的字符串。 每个层名称对应的 LayerObject 描述了应如何创建矢量图块层。 它指定要检索特征数据的特征类、通过缩放级别的数据精度,以及如何转换特征并将其呈现为磁贴。 |
version | True |
integer |
平铺集配置使用的 Azure Maps 平铺服务配置引用的版本。 目前仅允许版本 1。 使用当前版本或以前版本的任何其他版本都将导致错误。 |
响应
名称 | 类型 | 说明 |
---|---|---|
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
名称 | 说明 |
---|---|
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 门户、PowerShell、CLI、Azure SDK 或 REST API,通过 Azure 管理平面在Azure Maps资源上列出 SAS 操作创建。
使用此令牌,任何应用程序都有权使用 Azure 基于角色的访问控制进行访问,并精细控制特定令牌的过期、速率和区域 () 。 换句话说,SAS 令牌可用于允许应用程序以比共享密钥更安全的方式控制访问。
对于公开的应用程序,我们建议在 Map 帐户资源 上配置允许的来源的特定列表,以限制呈现滥用,并定期续订 SAS 令牌。
Type:
apiKey
In:
header
示例
Validates the correctness of a tileset configuration
Sample Request
POST https://us.atlas.microsoft.com/tilesets:validateConfiguration?api-version=2023-03-01-preview&datasetId=[datasetId]
{
"version": 1,
"layers": {
"Indoor test": {
"minZoom": 10,
"maxZoom": 18,
"features": {
"featureClasses": [
"unit"
],
"filter": [
"any",
[
"!=",
[
"get",
"featureType"
],
"conference"
],
[
"!=",
[
"get",
"featureType"
],
"restroom"
]
]
}
}
}
}
Sample Response
{
"valid": false,
"warnings": [],
"errors": [
{
"code": "CustomLayerNameNotSupported",
"message": "Custom layerName 'Indoor test' is not supported yet.",
"target": "Indoor test"
}
]
}
定义
名称 | 说明 |
---|---|
Error |
资源管理错误附加信息。 |
Error |
验证错误代码。 |
Error |
错误详细信息。 |
Error |
错误响应 |
Feature |
磁贴集配置的功能配置。 |
Layer |
图块集配置的层对象。 |
Tileset |
图块集配置顶级字段。 磁贴集配置是必须包含以下顶级字段的 JSON 对象: |
Tileset |
图块集配置验证结果。 |
Validation |
磁贴集配置验证错误。 |
Validation |
磁贴集配置验证错误。 |
ErrorAdditionalInfo
资源管理错误附加信息。
名称 | 类型 | 说明 |
---|---|---|
info |
object |
其他信息。 |
type |
string |
其他信息类型。 |
ErrorCode
验证错误代码。
名称 | 类型 | 说明 |
---|---|---|
CustomLayerNameNotSupported |
string |
目前不支持自定义层名称。 |
CustomOntologyNotSupported |
string |
目前不支持自定义本体,“Facility-2.0”是受支持的本体。 |
DuplicateFeatureClassFound |
string |
特征类名称应是唯一的。 |
DuplicateLayerNameFound |
string |
层名称应是唯一的。 |
UndefinedFeatureClasses |
string |
特征类应在本体定义中定义,并且特征类名称区分大小写。 |
ErrorDetail
错误详细信息。
名称 | 类型 | 说明 |
---|---|---|
additionalInfo |
错误附加信息。 |
|
code |
string |
错误代码。 |
details |
错误详细信息。 |
|
message |
string |
错误消息。 |
target |
string |
错误目标。 |
ErrorResponse
错误响应
名称 | 类型 | 说明 |
---|---|---|
error |
错误对象。 |
Feature
磁贴集配置的功能配置。
名称 | 类型 | 说明 |
---|---|---|
featureClasses |
string[] |
将用于生成层的特征类列表。 可以在其本体定义中找到有效的特征类。 例如, 设施本体 |
filter |
object |
删除与模式不匹配的功能。 请参阅 MapLibre 筛选器表达式 |
LayerObject
图块集配置的层对象。
名称 | 类型 | 说明 |
---|---|---|
features |
指定特征类和筛选器。 |
|
maxZoom |
integer |
要生成的层的最高缩放级别。 |
minZoom |
integer |
要生成的层的最低缩放级别。 |
TilesetConfiguration
图块集配置顶级字段。 磁贴集配置是必须包含以下顶级字段的 JSON 对象:
名称 | 类型 | 说明 |
---|---|---|
layers |
<string,
Layer |
层的名称及其配置选项。 配置层对象包含键值对,这些键值对将图块层的名称与其配置相关联。 对于每个键值对,键是层的名称,值为包含层的配置和选项的 LayerObject。 每个层都必须有一个名称。 这是最终图块集中数据层的唯一标识符。 在任何图块集中,每个层名称都必须是唯一的。 层名称必须是仅包含下划线 (_) 和字母数字字符的字符串。 每个层名称对应的 LayerObject 描述了应如何创建矢量图块层。 它指定要检索特征数据的特征类、通过缩放级别的数据精度,以及如何转换特征并将其呈现为磁贴。 |
version |
integer |
平铺集配置使用的 Azure Maps 平铺服务配置引用的版本。 目前仅允许版本 1。 使用当前版本或以前版本的任何其他版本都将导致错误。 |
TilesetConfigurationValidationResult
图块集配置验证结果。
名称 | 类型 | 说明 |
---|---|---|
errors |
验证错误列表。 |
|
valid |
boolean |
验证结果。 |
warnings |
验证警告的列表。 |
ValidationError
磁贴集配置验证错误。
名称 | 类型 | 说明 |
---|---|---|
code |
验证错误代码。 |
|
message |
string |
验证错误消息。 |
target |
string |
验证错误的目标元素。 |
ValidationWarning
磁贴集配置验证错误。
名称 | 类型 | 说明 |
---|---|---|
code |
string |
验证警告代码。 |
message |
string |
验证警告消息。 |
target |
string |
验证警告的目标元素。 |