Route - Post Route Range
适用于:请参阅定价 层。
路线范围 API 创建一个多边形,该多边形描述根据指定的时间或距离预算,从特定阈值内的给定位置到达的区域。 多边形边界(或 Isochrone)以逆时针方向返回,以及作为原点结果的精确多边形中心。
返回的多边形可用于空间筛选,以搜索所提供的 Isochrone 中感兴趣的特征。
有关国家/地区路由可用性的信息,请参阅 Azure Maps 路由覆盖范围。
重要
通过使用此功能,你同意预览版法律条款。 有关更多详细信息,请参阅 预览版补充条款。
POST https://atlas.microsoft.com/route/range?api-version=2024-07-01-preview
URI 参数
名称 | 在 | 必需 | 类型 | 说明 |
---|---|---|---|---|
api-version
|
query | True |
string |
Azure Maps API 的版本号。 |
请求头
Media Types: "application/geo+json"
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
x-ms-client-id |
string |
指定哪个帐户与 Microsoft Entra ID 安全模型结合使用。 它表示 Azure Maps 帐户的唯一 ID,可以从 Azure Maps 管理平面帐户 API 检索。 若要在 Azure Maps 中使用 Microsoft Entra ID 安全性,请参阅以下 文章 以获取指导。 |
请求正文
Media Types: "application/geo+json"
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
geometry | True |
指定 |
|
properties | True |
指定要用于计算时序多边形的参数。 |
|
type | True |
指定 |
响应
名称 | 类型 | 说明 |
---|---|---|
200 OK |
还行 Media Types: "application/geo+json", "application/json" |
|
Other Status Codes |
发生意外错误。 Media Types: "application/geo+json", "application/json" 标头 x-ms-error-code: string |
安全性
AADToken
这些 Microsoft Entra OAuth 2.0 流。 与 Azure 基于角色的访问配对时, 控制它可用于控制对 Azure Maps REST API 的访问。 Azure 基于角色的访问控制用于指定对一个或多个 Azure Maps 资源帐户或子资源的访问。 任何用户、组或服务主体都可以通过内置角色或由一个或多个对 Azure Maps REST 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 资源
使用此令牌,任何应用程序都有权使用 Azure 基于角色的访问控制进行访问,并精细控制特定令牌的过期、速率和区域。 换句话说,SAS 令牌可用于允许应用程序以比共享密钥更安全的方式控制访问。
对于公开的应用程序,建议在 映射帐户资源 上配置允许的源的特定列表,以限制呈现滥用并定期续订 SAS 令牌。
类型:
apiKey
在:
header
示例
Successfully retrieve a set of locations that can be reached from the origin point based on the specified conditions
示例请求
POST https://atlas.microsoft.com/route/range?api-version=2024-07-01-preview
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
5.86605,
50.9745
]
},
"properties": {
"timeBudgetInSec": 6000
}
}
示例响应
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
5.86605,
50.9745
]
},
"properties": {
"type": "center"
}
},
{
"type": "Feature",
"bbox": [
3.62838,
49.83259,
7.9826,
52.25674
],
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
5.73602,
52.03704
],
[
5.59435,
52.09456
],
[
5.42279,
52.16815
],
[
5.21276,
52.25047
],
[
5.15355,
52.21374
],
[
4.96687,
52.25674
],
[
4.739,
52.07834
],
[
4.72513,
52.05647
],
[
4.53237,
51.94553
],
[
4.31165,
51.70119
],
[
4.28917,
51.5837
],
[
3.82685,
51.48463
],
[
3.62838,
51.21096
],
[
3.89244,
50.6814
],
[
3.93493,
50.66791
],
[
3.98156,
50.49042
],
[
4.47995,
50.30944
],
[
4.60502,
50.24448
],
[
4.89999,
50.24467
],
[
5.04206,
50.08735
],
[
5.23042,
49.99214
],
[
5.40994,
49.88478
],
[
5.46178,
49.85797
],
[
5.7196,
49.86279
],
[
5.74151,
49.83259
],
[
5.9387,
50.22239
],
[
6.08535,
50.0011
],
[
6.12089,
50.04616
],
[
6.28373,
50.09472
],
[
6.51654,
49.95863
],
[
6.61034,
50.00485
],
[
6.70295,
50.00587
],
[
6.65865,
50.2947
],
[
6.79276,
50.36903
],
[
7.32163,
50.31614
],
[
7.58782,
50.36737
],
[
7.7626,
50.46919
],
[
7.9826,
50.96246
],
[
7.55924,
51.07086
],
[
7.58138,
51.36614
],
[
7.67861,
51.52015
],
[
7.35175,
51.65781
],
[
7.21664,
51.81916
],
[
7.0467,
51.9587
],
[
6.67267,
51.82713
],
[
6.48424,
51.81133
],
[
6.27316,
51.9368
],
[
6.14452,
52.01701
],
[
6.09312,
52.20847
],
[
6.01297,
52.23705
],
[
5.86605,
50.9745
],
[
5.73602,
52.03704
]
]
]
},
"properties": {
"type": "boundary"
}
}
]
}
定义
名称 | 说明 |
---|---|
Adr |
ADR 隧道限制代码。 ADR是一项欧洲关于道路危险品国际运输的协议。 ADR 隧道限制代码用于确定是否允许车辆通过隧道,并限制危险品的运输。 |
Features |
指定 |
Feature |
指定 |
Input |
指定要用于计算时序多边形的参数。 |
Maps |
错误详细信息。 |
Maps |
Azure Maps API 的常见错误响应,以返回失败操作的错误详细信息。 |
Maps |
包含与当前对象有关错误的更具体信息的对象。 |
Route |
指定确定可访问位置时路由计算应遵循的限制。 避免在请求中支持多个值。 示例:“avoid”: [“limitedAccessHighways”, “tollRoads”] |
Route |
路由范围属性。 |
Route |
包含 Geometry 对象的 GeoJSON 特征对象以及路由的其他属性。 |
Route |
指定要用于优化路由的参数。 如果未定义,则默认值为“fastestWithoutTraffic”,它将返回路线,以尽量减少旅行时间,而无需使用当前交通信息。 示例:“optimizeRoute”:“shortest” |
Route |
指定 |
Route |
指定 |
Route |
指定范围计算的起点。
|
Route |
此对象是从成功调用返回的。 |
Route |
指定计算范围多边形时要考虑的旅行配置文件。 如果未指定,则默认值为“driving”。 示例:“travelMode”:“driving” |
Route |
响应中返回的功能对象的特征类型。 |
Route |
指定计算可到达位置时要考虑的车辆高度、重量、最大速度、货物类型等车辆属性。 这有助于避免低桥通关、道路限制、难以右转,根据车辆规格提供优化的卡车路线。 车辆属性在 vehicleSpec 属性中指定。 |
Vehicle |
可能归类为危险物质的货物类型,并受某些道路限制。 可用的 vehicleLoadType 值为美国 Hazmat 类 1 到 9,以及用于其他国家/地区的通用分类。 以 USHazmat 开头的值用于美国路由,而其他Hazmat 应用于所有其他国家/地区。 vehicleLoadType 支持请求中的多个值。 |
AdrTunnelRestrictionCodeEnum
ADR 隧道限制代码。 ADR是一项欧洲关于道路危险品国际运输的协议。 ADR 隧道限制代码用于确定是否允许车辆通过隧道,并限制危险品的运输。
值 | 说明 |
---|---|
B |
具有代码 B 的车辆受限于 ADR 隧道类别 B、C、D 和 E 的道路。 |
C |
具有代码 C 的车辆受 ADR 隧道类别 C、D 和 E 的道路限制 |
D |
具有代码 D 的车辆受 ADR 隧道类别 D 和 E 的道路限制。 |
E |
具有代码 E 的车辆受 ADR 隧道类别 E 的道路限制。 |
FeaturesItemTypeEnum
指定 GeoJSON
类型。 唯一支持的对象类型是 Feature。 有关详细信息,请参阅 RFC 7946。
值 | 说明 |
---|---|
Feature |
指定功能对象类型 |
FeatureTypeEnum
指定 GeoJSON
类型。 唯一支持的对象类型是 FeatureCollection
。 有关详细信息,请参阅 RFC 7946。
值 | 说明 |
---|---|
FeatureCollection |
指定 |
InputRouteRangeProperties
指定要用于计算时序多边形的参数。
名称 | 类型 | 默认值 | 说明 |
---|---|---|---|
avoid |
指定确定可访问位置时路由计算应遵循的限制。 避免在请求中支持多个值。 示例:“avoid”: [“limitedAccessHighways”, “tollRoads”] |
||
departAt |
string |
从原点出发的日期和时间(格式为 dateTime 值)由 RFC 3339,第 5.6 节定义。 如果未指定时区偏移量,则假定 UTC。 如果未设置 例: “departAt”: “2023-06-01T09:30:00.000-07:00” |
|
distanceBudgetInMeters |
number |
距离预算指定可从原点行驶的最大范围(以米为单位)。 指定 当 示例:“distanceBudgetInMeters”:5000 |
|
isSimplifiedPolygon |
boolean |
true |
使用此函数可以指定是否需要简化多边形,以减小多边形顶点的数量,同时保留形状。 默认情况下,API 返回低定义多边形。 |
optimizeRoute | fastestWithoutTraffic |
指定要用于优化路由的参数。 如果未定义,则默认值为“fastestWithoutTraffic”,它将返回路线,以尽量减少旅行时间,而无需使用当前交通信息。 示例:“optimizeRoute”:“shortest” |
|
timeBudgetInSec |
number |
时间预算指定可用于旅行的最长时间(以秒为单位),定义从出发点到此时间约束内可以走多远。 指定 当 示例:“timeBudgetInSec”:3600 |
|
travelMode | driving |
指定计算范围多边形时要考虑的旅行配置文件。 如果未指定,则默认值为“driving”。 示例:“travelMode”:“driving” |
|
vehicleSpec |
指定计算可到达位置时要考虑的车辆高度、重量、最大速度、货物类型等车辆属性。 这有助于避免低桥通关、道路限制、难以右转,根据车辆规格提供优化的卡车路线。 车辆属性在 vehicleSpec 属性中指定。 |
MapsErrorDetail
错误详细信息。
名称 | 类型 | 说明 |
---|---|---|
code |
string |
服务器定义的错误代码集之一。 |
details |
导致此报告错误的特定错误的详细信息数组。 |
|
innererror |
包含与当前对象有关错误的更具体信息的对象。 |
|
message |
string |
错误的人工可读表示形式。 |
target |
string |
错误的目标。 |
MapsErrorResponse
Azure Maps API 的常见错误响应,以返回失败操作的错误详细信息。
名称 | 类型 | 说明 |
---|---|---|
error |
错误详细信息。 |
MapsInnerError
包含与当前对象有关错误的更具体信息的对象。
名称 | 类型 | 说明 |
---|---|---|
code |
string |
错误代码。 |
innererror |
包含与当前对象有关错误的更具体信息的对象。 |
RouteRangeAvoidEnum
指定确定可访问位置时路由计算应遵循的限制。 避免在请求中支持多个值。
示例:“avoid”: [“limitedAccessHighways”, “tollRoads”]
值 | 说明 |
---|---|
borderCrossings |
避免在路线中越过国家/地区边界。 |
carTrains |
避免汽车列车。 |
carpools |
避免需要使用汽车池的路线。 |
ferries |
避免在路线中使用渡轮。 |
limitedAccessHighways |
避免在路线中使用有限的访问高速公路。 |
lowEmissionZones |
避免路由中的低排放区域。 |
tollRoads |
避免在路线中使用收费公路。 |
tunnels |
避免在路由中使用隧道。 |
unpavedRoads |
避免路线中未修补的道路。 |
RouteRangeFeatureProperties
路由范围属性。
名称 | 类型 | 说明 |
---|---|---|
type |
响应中返回的功能对象的特征类型。 |
RouteRangeFeaturesItem
包含 Geometry 对象的 GeoJSON 特征对象以及路由的其他属性。
名称 | 类型 | 说明 |
---|---|---|
bbox |
number[] |
地球上的矩形区域定义为边界框对象。 矩形的两侧由纬度和经度值定义。 有关详细信息,请参阅 RFC 7946 第 5 节。 示例:“bbox”: [-10.0, -10.0, 10.0, 10.0] |
geometry | RouteRangeGeometry: |
有效的 |
properties |
路由范围属性。 |
|
type |
指定 |
RouteRangeOptimizeRouteEnum
指定要用于优化路由的参数。 如果未定义,则默认值为“fastestWithoutTraffic”,它将返回路线,以尽量减少旅行时间,而无需使用当前交通信息。
示例:“optimizeRoute”:“shortest”
值 | 说明 |
---|---|
fastestWithTraffic |
计算路由,以最大程度地减少使用当前流量信息的时间。
|
fastestWithoutTraffic |
查找最快的路线,而不考虑交通信息。 |
shortest |
计算路线以最大程度地减少距离。 不使用流量信息。 |
RouteRangePointGeometry
指定 GeoJSON
Point Geometry 对象。 有关详细信息,请参阅 RFC 7946。
名称 | 类型 | 说明 |
---|---|---|
coordinates |
number[] |
|
type |
string:
Point |
指定 |
RouteRangePolygonGeometry
指定 GeoJSON
多边形 Geometry 对象。 有关详细信息,请参阅 RFC 7946。
名称 | 类型 | 说明 |
---|---|---|
coordinates |
number[] |
|
type |
string:
Polygon |
指定 |
RouteRangeRequest
指定范围计算的起点。
GeoJSON
功能对象和其他属性。 有关详细信息,请参阅 RFC 7946。
名称 | 类型 | 说明 |
---|---|---|
geometry |
指定 |
|
properties |
指定要用于计算时序多边形的参数。 |
|
type |
指定 |
RouteRangeResponse
此对象是从成功调用返回的。
名称 | 类型 | 说明 |
---|---|---|
features |
|
|
type |
指定 |
RouteRangeTravelModeEnum
指定计算范围多边形时要考虑的旅行配置文件。 如果未指定,则默认值为“driving”。
示例:“travelMode”:“driving”
值 | 说明 |
---|---|
driving |
适用于汽车的路由配置文件用于范围多边形计算。 |
truck |
适用于卡车等商用车辆的路线配置文件用于范围多边形计算。 |
RouteRangeTypeEnum
响应中返回的功能对象的特征类型。
值 | 说明 |
---|---|
boundary |
边界特征类型表示范围多边形。 |
center |
中心点特征类型表示用于范围多边形计算的点。 |
RouteRangeVehicleSpec
指定计算可到达位置时要考虑的车辆高度、重量、最大速度、货物类型等车辆属性。 这有助于避免低桥通关、道路限制、难以右转,根据车辆规格提供优化的卡车路线。 车辆属性在 vehicleSpec 属性中指定。
名称 | 类型 | 默认值 | 说明 |
---|---|---|---|
adrTunnelRestrictionCode |
ADR 隧道限制代码。 ADR是一项欧洲关于道路危险品国际运输的协议。 ADR 隧道限制代码用于确定是否允许车辆通过隧道,并限制危险品的运输。 |
||
axleCount |
integer |
车辆上的轴数。 |
|
axleWeight |
integer |
0 |
车辆每轴重量(以公斤为单位)。 值为 0 表示不考虑每个轴的重量限制。 |
height |
number |
0 |
车辆的高度(以米为单位)。 值为 0 表示不考虑高度限制。 |
isVehicleCommercial |
boolean |
False |
车辆是否用于商业目的。 商业车辆不得在一些公路上行驶。 |
length |
number |
0 |
车辆长度(以米为单位)。 值为 0 表示不考虑长度限制。 |
loadType |
可能归类为危险物质的货物类型,并受某些道路限制。 可用的 vehicleLoadType 值为美国 Hazmat 类 1 到 9,以及用于其他国家/地区的通用分类。 以 USHazmat 开头的值用于美国路由,而其他Hazmat 应用于所有其他国家/地区。 vehicleLoadType 支持请求中的多个值。 |
||
maxSpeed |
integer |
0 |
车辆的最大速度(以公里/小时为单位)。 车辆配置文件中的最大速度用于检查是否允许车辆在高速公路上。 值为 0 表示将在路线规划期间确定并应用车辆的相应值。 在路由规划期间,可能会重写非零值。 例如,当前流量流为 60 公里/小时。 如果车辆最大速度设置为 50 公里/小时,路由引擎将考虑 60 公里/小时,因为这是目前的情况。 如果车辆的最大速度为 80 公里/小时,但当前交通流量为 60 公里/小时,则路由引擎将再次使用 60 公里/小时。 |
weight |
integer |
0 |
车辆重量(以公斤为单位)。 值为 0 表示不考虑权重限制。 |
width |
number |
0 |
车辆宽度(以米为单位)。 值为 0 表示不考虑宽度限制。 |
VehicleLoadTypeEnum
可能归类为危险物质的货物类型,并受某些道路限制。 可用的 vehicleLoadType 值为美国 Hazmat 类 1 到 9,以及用于其他国家/地区的通用分类。 以 USHazmat 开头的值用于美国路由,而其他Hazmat 应用于所有其他国家/地区。 vehicleLoadType 支持请求中的多个值。
值 | 说明 |
---|---|
USHazmatClass1 |
炸药 |
USHazmatClass2 |
压缩气体 |
USHazmatClass3 |
易燃液体 |
USHazmatClass4 |
易燃固体 |
USHazmatClass5 |
Oxidizers |
USHazmatClass6 |
毒药 |
USHazmatClass7 |
放射性 |
USHazmatClass8 |
腐蚀 |
USHazmatClass9 |
杂项 |
otherHazmatExplosive |
炸药 |
otherHazmatGeneral |
杂项 |
otherHazmatHarmfulToWater |
有害于水 |