RequestRouteDirectionsBatch interface
Méthodes
get(Request |
L’API Télécharger les résultats de lot asynchronesPour télécharger les résultats de lot asynchrones, vous émettrez une demande de
Voici la séquence classique d’opérations pour télécharger les résultats du lot :
Modèle de réponse par lotLe contenu de données retourné est similaire pour les demandes asynchrones et de synchronisation. Lors du téléchargement des résultats d’une demande de traitement asynchrone par lot, si le traitement du lot a terminé, le corps de la réponse contient la réponse par lot. Cette réponse par lot contient un composant
Voici un exemple de réponse Batch avec 1 réussite et 1 échec résultat :
|
post(Route |
L’API Envoyer une demande de traitement par lots asynchroneL’API asynchrone est appropriée pour traiter de gros volumes de demandes de routage relativement complexes
Lorsque vous effectuez une requête à l’aide d’une requête asynchrone, par défaut, le service retourne un code de réponse 202 le long d’une URL de redirection dans le champ Emplacement de l’en-tête de réponse. Cette URL doit être vérifiée régulièrement jusqu’à ce que les données de réponse ou les informations d’erreur soient disponibles. Les réponses asynchrones sont stockées pendant 24 heures. L’URL de redirection retourne une réponse 404 si elle est utilisée après la période d’expiration. Notez que la demande de traitement par lots asynchrone est une opération longue. Voici une séquence classique d’opérations :
Corps POST pour la requête BatchPour envoyer les itinéraires itinéraires requêtes, vous utiliserez une requête
Un itinéraire directions requête dans un lot n’est qu’une URL partielle sans le protocole, l’URL de base, le chemin d’accès, la version d’API et la clé d’abonnement. Il peut accepter l’un des itinéraires de routage pris en chargeparamètres d’URI. Les valeurs de chaîne dans la directions de l’itinéraire requête doivent être correctement placées en échappement (par exemple, « le caractère doit être échappé avec \ ) et il doit également être correctement codé en URL. L’API asynchrone permet à l’appelant de traiter jusqu’à 700 requêtes et de synchroniser l’API jusqu’à 100 requêtes, et le lot doit contenir au moins 1 requête. Télécharger les résultats de lot asynchronesPour télécharger les résultats de lot asynchrones, vous émettrez une demande de
Voici la séquence classique d’opérations pour télécharger les résultats du lot :
Modèle de réponse par lotLe contenu de données retourné est similaire pour les demandes asynchrones et de synchronisation. Lors du téléchargement des résultats d’une demande de traitement asynchrone par lot, si le traitement du lot a terminé, le corps de la réponse contient la réponse par lot. Cette réponse par lot contient un composant
Voici un exemple de réponse Batch avec 1 réussite et 1 échec résultat :
|
Détails de la méthode
get(RequestParameters)
L’API Get Route Directions Batch
est une requête HTTP GET
qui envoie des lots de requêtes à l’API Get Route Directions à l’aide d’une seule requête. Vous pouvez appeler Get Route Directions Batch
API pour s’exécuter de manière asynchrone (asynchrone) ou synchrone (synchronisation). L’API asynchrone permet à l’appelant de traiter par lots jusqu’à 700 requêtes et de synchroniser l’API jusqu’à 100 requêtes.
Télécharger les résultats de lot asynchrones
Pour télécharger les résultats de lot asynchrones, vous émettrez une demande de GET
sur le point de terminaison de téléchargement par lots. Cette 'URL de téléchargement peut être obtenue à partir de l’en-tête Location
d’une demande de traitement par lots réussie POST
et ressemble à ce qui suit :
https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
Voici la séquence classique d’opérations pour télécharger les résultats du lot :
Le client envoie une demande de
GET
à l’aide de l’URL de téléchargement .Le serveur répond avec l’une des options suivantes :
HTTP
202 Accepted
: la requête Batch a été acceptée mais est toujours traitée. Réessayez dans un certain temps.HTTP
200 OK
- Requête batch correctement traitée. Le corps de la réponse contient tous les résultats du lot.
Modèle de réponse par lot
Le contenu de données retourné est similaire pour les demandes asynchrones et de synchronisation. Lors du téléchargement des résultats d’une demande de traitement asynchrone par lot, si le traitement du lot a terminé, le corps de la réponse contient la réponse par lot. Cette réponse par lot contient un composant summary
qui indique les totalRequests
qui faisaient partie de la demande de lot d’origine et successfulRequests
c’est-à-dire les requêtes qui ont été exécutées avec succès. La réponse par lot inclut également un tableau batchItems
qui contient une réponse pour chaque requête dans la requête de lot. Les batchItems
contiennent les résultats dans le même ordre que les requêtes d’origine ont été envoyées dans la requête de lot. Chaque élément de batchItems
contient des champs statusCode
et response
. Chaque response
dans batchItems
est de l’un des types suivants :
RouteDirections
: si la requête s’est terminée correctement.Error
: si la requête a échoué. La réponse contient unecode
et unemessage
dans ce cas.
Voici un exemple de réponse Batch avec 1 réussite et 1 échec résultat :
{
"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 get(options?: RequestParameters): StreamableMethod<RouteGetRouteDirectionsBatch200Response | RouteGetRouteDirectionsBatch202Response>
Paramètres
- options
- RequestParameters
Retours
post(RouteRequestRouteDirectionsBatchParameters)
L’API Post Route Directions Batch
est une requête HTTP POST
qui envoie des lots de requêtes à l’API Get Route Directions à l’aide d’une requête asynchrone unique. Vous pouvez appeler Route Directions Batch
API pour s’exécuter de manière asynchrone (asynchrone) ou synchrone (synchronisation). L’API asynchrone permet à l’appelant de traiter par lots jusqu’à 700 requêtes et de synchroniser l’API jusqu’à 100 requêtes. Pour appeler l’API Post Route Directions Batch
dans une requête synchrone, consultez Post Route Directions Batch Sync.
Envoyer une demande de traitement par lots asynchrone
L’API asynchrone est appropriée pour traiter de gros volumes de demandes de routage relativement complexes
- Il permet la récupération des résultats dans un appel distinct (plusieurs téléchargements sont possibles).
- L’API asynchrone est optimisée pour la fiabilité et n’est pas censée s’exécuter dans un délai d’expiration.
- Le nombre d’éléments de lot est limité à 700 pour cette API.
Lorsque vous effectuez une requête à l’aide d’une requête asynchrone, par défaut, le service retourne un code de réponse 202 le long d’une URL de redirection dans le champ Emplacement de l’en-tête de réponse. Cette URL doit être vérifiée régulièrement jusqu’à ce que les données de réponse ou les informations d’erreur soient disponibles. Les réponses asynchrones sont stockées pendant 24 heures. L’URL de redirection retourne une réponse 404 si elle est utilisée après la période d’expiration.
Notez que la demande de traitement par lots asynchrone est une opération longue. Voici une séquence classique d’opérations :
- Le client envoie une demande de
POST
Route Directions Batch à Azure Maps.
POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0&subscription-key={subscription-key}
Le serveur répond avec l’une des options suivantes :
HTTP
202 Accepted
: la requête Batch a été acceptée.HTTP
Error
: une erreur s’est produite lors du traitement de votre requête Batch. Il peut s’agir d’un400 Bad Request
ou d’un autre code d’étatError
.Si la demande de lot a été acceptée avec succès, l’en-tête
Location
dans la réponse contient l’URL pour télécharger les résultats de la demande de traitement. Cet URI d’état ressemble à ceci :
GET https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
- Le client émet une demande de
GET
sur l’URL de téléchargement obtenue à l’étape 3 pour télécharger les résultats du lot.
Corps POST pour la requête Batch
Pour envoyer les itinéraires itinéraires requêtes, vous utiliserez une requête POST
où le corps de la requête contiendra le tableau batchItems
au format json
et l’en-tête Content-Type
sera défini sur application/json
. Voici un exemple de corps de requête contenant 3 itinéraires itinéraires requêtes :
{
"batchItems": [
{ "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false" },
{ "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest" },
{ "query": "?query=48.923159,-122.557362:32.621279,-116.840362" }
]
}
Un itinéraire directions requête dans un lot n’est qu’une URL partielle sans le protocole, l’URL de base, le chemin d’accès, la version d’API et la clé d’abonnement. Il peut accepter l’un des itinéraires de routage pris en chargeparamètres d’URI. Les valeurs de chaîne dans la directions de l’itinéraire requête doivent être correctement placées en échappement (par exemple, « le caractère doit être échappé avec \ ) et il doit également être correctement codé en URL.
L’API asynchrone permet à l’appelant de traiter jusqu’à 700 requêtes et de synchroniser l’API jusqu’à 100 requêtes, et le lot doit contenir au moins 1 requête.
Télécharger les résultats de lot asynchrones
Pour télécharger les résultats de lot asynchrones, vous émettrez une demande de GET
sur le point de terminaison de téléchargement par lots. Cette 'URL de téléchargement peut être obtenue à partir de l’en-tête Location
d’une demande de traitement par lots réussie POST
et ressemble à ce qui suit :
https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
Voici la séquence classique d’opérations pour télécharger les résultats du lot :
Le client envoie une demande de
GET
à l’aide de l’URL de téléchargement .Le serveur répond avec l’une des options suivantes :
HTTP
202 Accepted
: la requête Batch a été acceptée mais est toujours traitée. Réessayez dans un certain temps.HTTP
200 OK
- Requête batch correctement traitée. Le corps de la réponse contient tous les résultats du lot.
Modèle de réponse par lot
Le contenu de données retourné est similaire pour les demandes asynchrones et de synchronisation. Lors du téléchargement des résultats d’une demande de traitement asynchrone par lot, si le traitement du lot a terminé, le corps de la réponse contient la réponse par lot. Cette réponse par lot contient un composant summary
qui indique les totalRequests
qui faisaient partie de la demande de lot d’origine et successfulRequests
c’est-à-dire les requêtes qui ont été exécutées avec succès. La réponse par lot inclut également un tableau batchItems
qui contient une réponse pour chaque requête dans la requête de lot. Les batchItems
contiennent les résultats dans le même ordre que les requêtes d’origine ont été envoyées dans la requête de lot. Chaque élément de batchItems
contient des champs statusCode
et response
. Chaque response
dans batchItems
est de l’un des types suivants :
RouteDirections
: si la requête s’est terminée correctement.Error
: si la requête a échoué. La réponse contient unecode
et unemessage
dans ce cas.
Voici un exemple de réponse Batch avec 1 réussite et 1 échec résultat :
{
"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: RouteRequestRouteDirectionsBatchParameters): StreamableMethod<RouteRequestRouteDirectionsBatch200Response | RouteRequestRouteDirectionsBatch202Response>
Paramètres
Retours
Azure SDK for JavaScript