你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
RouteRequestRouteMatrix202Response interface
适用于:请参阅定价 层。
矩阵路由服务允许使用异步 (异步) 或同步 (同步) POST 请求计算由源位置和目标位置定义的一组路由的路由摘要矩阵。 对于每个给定的源,服务计算从该源到每个给定目标的路由成本。 可以将原点集和目标集视为表的列标题和行标题,表中的每个单元格都包含从源路由到该单元格的目标的成本。 例如,假设一家食品配送公司有 20 名司机,他们需要找到最近的司机从餐厅接货。 若要解决此用例,他们可以调用矩阵路由 API。
对于每个路线,返回行程时间和距离。 可以使用计算的成本来确定要使用路线路线 API 计算哪些详细路线。
异步请求矩阵的最大大小为 700 ,同步请求的最大大小为 100 , (源数乘以目标数) 。
提交同步路由矩阵请求
如果方案需要同步请求,并且矩阵的最大大小小于或等于 100,则可能需要发出同步请求。 此 API 矩阵的最大大小为 100 (源数乘以) 目标数。 考虑到这一约束,可能的矩阵尺寸的示例包括:10x10、6x8、9x8 (它不需要是方形) 。
POST https://atlas.microsoft.com/route/matrix/sync/json?api-version=1.0&subscription-key={subscription-key}
提交异步路由矩阵请求
异步 API 适用于处理大量相对复杂的路由请求。 使用异步请求发出请求时,默认情况下,服务在响应标头的“位置”字段中返回一个重定向 URL 的 202 响应代码。 应定期检查此 URL,直到响应数据或错误信息可用。 如果 waitForResults
请求中的参数设置为 true,则如果请求在 120 秒内完成,用户将收到 200 响应。
此 API 矩阵的最大大小为 700 (源数乘以) 目标数。 考虑到这一约束,可能的矩阵维度的示例包括:50x10、10x10、28x25。 10x70 (它不需要是方形) 。
异步响应将存储 14 天。 如果过期后使用重定向 URL,则返回 404 响应。
POST https://atlas.microsoft.com/route/matrix/json?api-version=1.0&subscription-key={subscription-key}
下面是典型的异步操作序列:
客户端将路由矩阵 POST 请求发送到Azure Maps
服务器将使用以下项之一进行响应:
HTTP
202 Accepted
- 路由矩阵请求已被接受。HTTP
Error
- 处理路由矩阵请求时出错。 这可能是 400 错误请求或任何其他错误状态代码。如果已成功接受矩阵路由请求,则响应中的 Location 标头包含用于下载请求结果的 URL。 此状态 URI 如下所示:
GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}
- 客户端对步骤 3 中获取的下载 URL 发出 GET 请求,以下载结果
下载同步结果
当你对路由矩阵同步 API 发出 POST 请求时,该服务将返回 200 个成功请求的响应代码和一个响应数组。 响应正文将包含数据,以后将无法检索结果。
下载异步结果
当请求发出响应时 202 Accepted
,将使用异步管道处理该请求。 系统会提供一个 URL,用于在响应的位置标头中检查异步请求的进度。 此状态 URI 如下所示:
GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}
发出请求时 GET
,位置标头提供的 URL 将返回以下响应。
HTTP
202 Accepted
- 矩阵请求已接受,但仍在处理中。 请稍后重试。
HTTP
200 OK
- 已成功处理矩阵请求。 响应正文包含所有结果。
- Extends
属性
body | |
headers | |
status |
继承属性
request | 生成此响应的请求。 |
属性详细信息
body
body: Record<string, unknown>
属性值
Record<string, unknown>
headers
headers: RawHttpHeaders & RouteRequestRouteMatrix202Headers
属性值
status
status: "202"
属性值
"202"