Поделиться через


RouteGetRouteDirectionsBatch202Response interface

API Get Route Directions Batch — это HTTP-запрос GET, который отправляет пакеты запросов в API Get Route Directions с помощью одного запроса. Вы можете вызывать API Get Route Directions Batch для асинхронного (асинхронного) или синхронного (синхронного). Асинхронный API позволяет вызывающей службе пакетировать до 700 запросов и синхронизации API до 100 запросов.

Скачивание асинхронных результатов пакетной службы

Чтобы скачать асинхронные результаты пакетной службы, вы получите запрос GET на конечную точку загрузки пакетной службы. Этот URL-адрес скачивания можно получить из заголовка Location успешного запроса POST пакетного запроса и выглядит следующим образом:

https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

Ниже приведена типичная последовательность операций для скачивания результатов пакетной службы:

  1. Клиент отправляет запрос GET с помощью URL-адреса скачивания.

  2. Сервер ответит на одно из следующих действий:

    HTTP-202 Accepted — пакетный запрос был принят, но по-прежнему обрабатывается. Повторите попытку в течение некоторого времени.

    HTTP 200 OK — пакетный запрос успешно обработан. Текст ответа содержит все результаты пакета.

Модель пакетного ответа

Возвращаемое содержимое данных аналогично асинхронным и синхронным запросам. При скачивании результатов асинхронного пакетного запроса, если пакет завершил обработку, текст ответа содержит пакетный ответ. Этот пакетный ответ содержит компонент summary, указывающий totalRequests, которые были частью исходного пакетного запроса и successfulRequestsто есть запросы, которые были выполнены успешно. Пакетный ответ также содержит массив batchItems, содержащий ответ для каждого запроса и каждого запроса в пакетном запросе. batchItems будет содержать результаты в том же порядке, что и исходные запросы, отправленные в пакетном запросе. Каждый элемент в batchItems содержит поля statusCode и response. Каждый response в batchItems имеет один из следующих типов:

  • RouteDirections. Если запрос выполнен успешно.

  • Error — если запрос завершился ошибкой. Ответ будет содержать code и message в этом случае.

Ниже приведен пример пакетного ответа с 1 успешный и 1 сбой результата:

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
Extends

Свойства

headers
status

Унаследованные свойства

body

Проанализированный текст

request

Запрос, создающий этот ответ.

Сведения о свойстве

headers

headers: RawHttpHeaders & RouteGetRouteDirectionsBatch202Headers

Значение свойства

status

status: "202"

Значение свойства

"202"

Сведения об унаследованном свойстве

body

Проанализированный текст

body: unknown

Значение свойства

unknown

наследуется от HttpResponse.body

request

Запрос, создающий этот ответ.

request: PipelineRequest

Значение свойства

наследуется от HttpResponse.request