Freigeben über


RequestRouteDirectionsBatchSync interface

Methoden

post(RouteRequestRouteDirectionsBatchSyncParameters)

Die Post Route Directions Batch Sync-API ist eine HTTP-POST Anforderung, die Batches von Abfragen mithilfe einer einzigen synchronen Anforderung an die Get Route Directions API sendet. Sie können Route Directions Batch-API aufrufen, um entweder asynchron (asynchron) oder synchron (Synchronisierung) auszuführen. Mit der asynchronen API können Aufrufer bis zu 700 Abfragen und Synchronisierungs-API bis zu 100 Abfragen stapeln. Informationen zum Aufrufen der Post Route Directions Batch-API in einer asynchronen Anforderung finden Sie unter Post Route Directions Batch.

Synchrone Batchanforderung übermitteln

Die synchrone API wird für einfache Batchanforderungen empfohlen. Wenn der Dienst eine Anforderung empfängt, antwortet er, sobald die Batchelemente berechnet werden, und es besteht keine Möglichkeit, die Ergebnisse später abzurufen. Die synchrone API gibt einen Timeoutfehler (eine 408-Antwort) zurück, wenn die Anforderung länger als 60 Sekunden dauert. Die Anzahl der Batchelemente ist auf 100 für diese API beschränkt.

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

Batchantwortmodell

Der zurückgegebene Dateninhalt ist für asynchrone und Synchronisierungsanforderungen ähnlich. Wenn der Batch die Verarbeitung abgeschlossen hat, enthält der Antworttext beim Herunterladen der Ergebnisse einer asynchronen Batchanforderung die Batchantwort. Diese Batchantwort enthält eine summary Komponente, die die totalRequests angibt, die Teil der ursprünglichen Batchanforderung waren, und successfulRequestsd. h. Abfragen, die erfolgreich ausgeführt wurden. Die Batchantwort enthält auch ein batchItems Array, das eine Antwort für jede und jede Abfrage in der Batchanforderung enthält. Die batchItems enthält die Ergebnisse in der genauen Reihenfolge, in der die ursprünglichen Abfragen in der Batchanforderung gesendet wurden. Jedes Element in batchItems enthält statusCode- und response Felder. Jede response in batchItems weist einen der folgenden Typen auf:

  • RouteDirections – Wenn die Abfrage erfolgreich abgeschlossen wurde.

  • Error – Wenn die Abfrage fehlgeschlagen ist. Die Antwort enthält in diesem Fall eine code und eine message.

Hier ist eine Beispielbatchantwort mit 1 erfolgreichen und 1 Ergebnis fehlgeschlagen:

{
    "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."
                }
            }
        }
    ]
}

Details zur Methode

post(RouteRequestRouteDirectionsBatchSyncParameters)

Die Post Route Directions Batch Sync-API ist eine HTTP-POST Anforderung, die Batches von Abfragen mithilfe einer einzigen synchronen Anforderung an die Get Route Directions API sendet. Sie können Route Directions Batch-API aufrufen, um entweder asynchron (asynchron) oder synchron (Synchronisierung) auszuführen. Mit der asynchronen API können Aufrufer bis zu 700 Abfragen und Synchronisierungs-API bis zu 100 Abfragen stapeln. Informationen zum Aufrufen der Post Route Directions Batch-API in einer asynchronen Anforderung finden Sie unter Post Route Directions Batch.

Synchrone Batchanforderung übermitteln

Die synchrone API wird für einfache Batchanforderungen empfohlen. Wenn der Dienst eine Anforderung empfängt, antwortet er, sobald die Batchelemente berechnet werden, und es besteht keine Möglichkeit, die Ergebnisse später abzurufen. Die synchrone API gibt einen Timeoutfehler (eine 408-Antwort) zurück, wenn die Anforderung länger als 60 Sekunden dauert. Die Anzahl der Batchelemente ist auf 100 für diese API beschränkt.

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

Batchantwortmodell

Der zurückgegebene Dateninhalt ist für asynchrone und Synchronisierungsanforderungen ähnlich. Wenn der Batch die Verarbeitung abgeschlossen hat, enthält der Antworttext beim Herunterladen der Ergebnisse einer asynchronen Batchanforderung die Batchantwort. Diese Batchantwort enthält eine summary Komponente, die die totalRequests angibt, die Teil der ursprünglichen Batchanforderung waren, und successfulRequestsd. h. Abfragen, die erfolgreich ausgeführt wurden. Die Batchantwort enthält auch ein batchItems Array, das eine Antwort für jede und jede Abfrage in der Batchanforderung enthält. Die batchItems enthält die Ergebnisse in der genauen Reihenfolge, in der die ursprünglichen Abfragen in der Batchanforderung gesendet wurden. Jedes Element in batchItems enthält statusCode- und response Felder. Jede response in batchItems weist einen der folgenden Typen auf:

  • RouteDirections – Wenn die Abfrage erfolgreich abgeschlossen wurde.

  • Error – Wenn die Abfrage fehlgeschlagen ist. Die Antwort enthält in diesem Fall eine code und eine message.

Hier ist eine Beispielbatchantwort mit 1 erfolgreichen und 1 Ergebnis fehlgeschlagen:

{
    "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."
                }
            }
        }
    ]
}
function post(options: RouteRequestRouteDirectionsBatchSyncParameters): StreamableMethod<RouteRequestRouteDirectionsBatchSync200Response | RouteRequestRouteDirectionsBatchSync408Response | RouteRequestRouteDirectionsBatchSyncDefaultResponse>

Parameter

Gibt zurück