你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Spatial - Get Closest Point
使用 获取基点和给定目标点集之间的最近点。
API Get Closest Point
是用户上传的数据集中由 标识udid
的基点和给定点集之间的最近点的 HTTP GET
请求。 目标点集由 GeoJSON 文件提供,该文件使用 数据注册表 服务上传并由唯一 udid 引用。 GeoJSON 文件只能包含点几何图形的集合。 如果提供,将忽略 MultiPoint 或其他几何图形。 接受的最大积分数为 100,000。 该算法不考虑路由或流量。 返回的信息包括最接近的点纬度、经度和距离(以米为单位)。
若要测试此 API,可以使用数据注册表服务 (请求正文) 上传 Post 最近点 API 示例的示例数据,并将以下示例udid
请求中的 替换为{udid}
创建数据注册表时使用的 。 有关详细信息,请参阅如何创建数据注册表。
GET https://{geography}.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&udid={udid}&lat={lat}&lon={lon}
GET https://{geography}.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&udid={udid}&lat={lat}&lon={lon}&numberOfClosestPoints={numberOfClosestPoints}
URI 参数
名称 | 在 | 必需 | 类型 | 说明 |
---|---|---|---|---|
format
|
path | True |
响应的所需格式。 仅支持 |
|
geography
|
path | True |
string |
Azure Maps 帐户的位置。 有效值为 us (美国东部、美国中西部、美国西部 2) 和欧盟 (北欧、西欧) 。 在请求中提供 时 |
api-version
|
query | True |
string |
Azure Maps API 的版本号。 |
lat
|
query | True |
number |
所传递位置的纬度。 示例:48.36。 |
lon
|
query | True |
number |
所传递位置的经度。 示例:-124.63。 |
udid
|
query | True |
string |
创建 数据注册表 以上传有效的 GeoJSON FeatureCollection 对象时使用的唯一 ID。 有关详细信息,请参阅 RFC 7946 。 特征的所有属性都应包含 |
number
|
query |
integer |
响应中预期最近的点数。 默认值:1,最小值:1,最大值:50 |
请求头
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
x-ms-client-id |
string |
指定要与 Microsoft Entra ID 安全模型一起使用的帐户。 它表示 Azure Maps 帐户的唯一 ID,可以从 Azure Maps 管理平面帐户 API 检索。 若要在 Azure Maps 中使用 Microsoft Entra ID 安全性,请参阅以下 文章 以获取指导。 |
响应
名称 | 类型 | 说明 |
---|---|---|
200 OK |
确定 |
|
Other Status Codes |
发生了意外错误。 |
安全性
AADToken
这些是 Microsoft Entra OAuth 2.0 流。 与 Azure 基于角色的访问控制 配对后,它可用于控制对 Azure Maps REST API 的访问。 Azure 基于角色的访问控制用于指定对一个或多个 Azure Maps 资源帐户或子资源的访问权限。 可以通过内置角色或由 Azure Maps REST API 的一个或多个权限组成的自定义角色授予任何用户、组或服务主体的访问权限。
若要实现方案,建议查看 身份验证概念。 总之,此安全定义提供了一个解决方案,用于通过能够对特定 API 和作用域进行访问控制的对象对应用程序 () 建模。
备注
- 此安全定义 需要使用
x-ms-client-id
标头来指示应用程序请求访问的 Azure Maps 资源。 这可以从 地图管理 API 获取。
Authorization URL
特定于 Azure 公有云实例。 主权云具有唯一的授权 URL 和Microsoft Entra ID 配置。
* Azure 基于角色的访问控制是通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 从 Azure 管理平面 配置的。
* 使用 Azure Maps Web SDK 可以基于配置设置多个用例的应用程序。
- 有关Microsoft标识平台的详细信息,请参阅 Microsoft标识平台概述。
类型:
oauth2
流向:
implicit
授权 URL:
https://login.microsoftonline.com/common/oauth2/authorize
作用域
名称 | 说明 |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
这是在通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 通过 Azure 管理平面创建 Azure Maps 资源 时预配的共享密钥。
使用此密钥,任何应用程序都有权访问所有 REST API。 换句话说,这些密钥当前可以视为颁发它们的帐户的主密钥。
对于公开的应用程序,我们建议使用 Azure Maps REST API 的服务器到服务器访问权限,以便安全地存储此密钥。
类型:
apiKey
在:
header
SAS Token
这是通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 通过 Azure 管理平面通过 Azure Maps 资源 上的列出 SAS 操作创建的共享访问签名令牌。
使用此令牌,任何应用程序都有权使用 Azure 基于角色的访问控制进行访问,并精细控制特定令牌的过期、速率和区域 () 。 换句话说,SAS 令牌可用于允许应用程序以比共享密钥更安全的方式控制访问。
对于公开的应用程序,我们建议在 映射帐户资源 上配置允许的来源的特定列表,以限制呈现滥用,并定期续订 SAS 令牌。
类型:
apiKey
在:
header
示例
GetClosestPoint
示例请求
GET https://us.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&udid=f6495f62-94f8-0ec2-c252-45626f82fcb2&lat=47.622942&lon=-122.316456
示例响应
{
"summary": {
"sourcePoint": {
"lat": 47.622942,
"lon": -122.316456
},
"udid": "f6495f62-94f8-0ec2-c252-45626f82fcb2",
"information": "10 points processed in user data"
},
"result": [
{
"distanceInMeters": 1587492.66,
"position": {
"lat": 40.51615340677395,
"lon": -105.02860293715861
},
"geometryId": "1001"
}
]
}
定义
名称 | 说明 |
---|---|
Closest |
最近点结果入口对象 |
Closest |
此对象是从成功的空间最近点调用返回的 |
Closest |
最近点摘要对象 |
Error |
资源管理错误附加信息。 |
Error |
错误详细信息。 |
Error |
错误响应 |
Json |
响应的所需格式。 仅支持 |
Lat |
使用短名称“lat”&“lon”表示为纬度和经度的位置。 |
ClosestPoint
最近点结果入口对象
名称 | 类型 | 说明 |
---|---|---|
distanceInMeters |
number |
从源点到最近点的距离(以米为单位) |
geometryId |
string |
唯一 ID 标识几何图形 |
position |
使用短名称“lat”&“lon”表示为纬度和经度的位置。 |
ClosestPointResponse
此对象是从成功的空间最近点调用返回的
名称 | 类型 | 说明 |
---|---|---|
result |
最近点结果数组 |
|
summary |
最近点摘要对象 |
ClosestPointSummary
最近点摘要对象
名称 | 类型 | 说明 |
---|---|---|
information |
string |
处理信息 |
sourcePoint |
使用短名称“lat”&“lon”表示为纬度和经度的位置。 |
|
udid |
string |
上传内容的唯一数据 ID (udid) |
ErrorAdditionalInfo
资源管理错误附加信息。
名称 | 类型 | 说明 |
---|---|---|
info |
object |
其他信息。 |
type |
string |
其他信息类型。 |
ErrorDetail
错误详细信息。
名称 | 类型 | 说明 |
---|---|---|
additionalInfo |
错误附加信息。 |
|
code |
string |
错误代码。 |
details |
错误详细信息。 |
|
message |
string |
错误消息。 |
target |
string |
错误目标。 |
ErrorResponse
错误响应
名称 | 类型 | 说明 |
---|---|---|
error |
错误对象。 |
JsonFormat
响应的所需格式。 仅支持 json
格式。
名称 | 类型 | 说明 |
---|---|---|
json |
string |
LatLongPairAbbreviated
使用短名称“lat”&“lon”表示为纬度和经度的位置。
名称 | 类型 | 说明 |
---|---|---|
lat |
number |
Latitude 属性 |
lon |
number |
Longitude 属性 |