Compartilhar via


RouteRequestRouteDirectionsBatchSyncDefaultResponse interface

A API de é uma solicitação HTTP que envia lotes de consultas para a API Obter Instruções de Rota usando uma única solicitação síncrona. Você pode chamar Route Directions Batch API para ser executada de forma assíncrona (assíncrona) ou síncrona (sincronização). A API assíncrona permite que o chamador lote até 700 consultas e sincronize a API até 100 consultas. Para chamar a API Post Route Directions Batch em uma solicitação assíncrona, consulte Post Route Directions Batch.

Enviar solicitação de lote síncrona

A API síncrona é recomendada para solicitações em lotes leves. Quando o serviço receber uma solicitação, ele responderá assim que os itens do lote forem calculados e não haverá nenhuma possibilidade de recuperar os resultados posteriormente. A API síncrona retornará um erro de tempo limite (uma resposta 408) se a solicitação levar mais de 60 segundos. O número de itens em lote é limitado a 100 para essa API.

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

Modelo de resposta em lote

O conteúdo de dados retornado é semelhante para solicitações assíncronas e de sincronização. Ao baixar os resultados de uma solicitação em lote assíncrona, se o lote tiver concluído o processamento, o corpo da resposta conterá a resposta em lote. Essa resposta em lote contém um componente summary que indica o totalRequests que faziam parte da solicitação em lote original e successfulRequestsou seja, consultas que foram executadas com êxito. A resposta em lote também inclui uma matriz de batchItems que contém uma resposta para cada consulta na solicitação em lote. O batchItems conterá os resultados exatamente na mesma ordem em que as consultas originais foram enviadas na solicitação em lote. Cada item em batchItems contém campos statusCode e response. Cada response em batchItems é de um dos seguintes tipos:

  • RouteDirections - Se a consulta foi concluída com êxito.

  • Error - Se a consulta falhou. A resposta conterá um code e um message nesse caso.

Aqui está um exemplo de Resposta em Lote com 1 bem-sucedido e 1 resultado com falha:

{
    "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

Propriedades

body
status

Propriedades herdadas

headers

Os cabeçalhos de resposta HTTP.

request

A solicitação que gerou essa resposta.

Detalhes da propriedade

body

body: ErrorResponseOutput

Valor da propriedade

status

status: string

Valor da propriedade

string

Detalhes das propriedades herdadas

headers

Os cabeçalhos de resposta HTTP.

headers: RawHttpHeaders

Valor da propriedade

Herdado de HttpResponse.headers

request

A solicitação que gerou essa resposta.

request: PipelineRequest

Valor da propriedade

herdado de httpResponse.request