Erreurs
En cas d'erreur, un corps de réponse d'erreur au format standard est renvoyé et le code d'état HTTP est défini sur un état d'erreur.
La réponse contient un objet avec un seul objet error
doté des clés suivantes:
code
: identique à l'état HTTP de la réponse.message
: brève description de l'erreur.status
: code d'état indiquant la nature de l'erreur.
Par exemple, l'envoi d'un paramètre placeId
non valide renverra l'erreur suivante:
{ "error": { "code": 400, "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"", "status": "INVALID_ARGUMENT" } }
Voici les erreurs possibles :
Coder | État | d'un message ; | Dépannage |
---|---|---|---|
400 | INVALID_ARGUMENT |
La clé que vous avez fournie n'est pas valide. | Votre clé API n'est pas valide ou n'a pas été incluse dans la requête. Veuillez vérifier que vous avez inclus l'intégralité de la clé et que vous avez activé l'API pour cette clé. |
400 | INVALID_ARGUMENT |
Le paramètre "\"chemin d'accès\" contient une valeur non valide: =[" | Votre demande contenait des arguments non valides. Les causes les plus probables de cette erreur sont les suivantes :
Cette erreur ne sera pas renvoyée si |
403 | PERMISSION_DENIED |
La demande non enregistrée a été bloquée. Veuillez vous inscrire via la Google Developers Console. | La demande a été refusée pour une ou plusieurs des raisons suivantes :
Pour que vous puissiez utiliser les produits Google Maps Platform, la facturation doit être activée sur votre compte, et toutes les requêtes doivent inclure une clé API valide. Pour résoudre ce problème, procédez comme suit:
|
404 | NOT_FOUND |
HTTPS est requis pour ce service. | Assurez-vous d'envoyer les requêtes à https://roads.googleapis.com/ et non à http://roads.googleapis.com/ . |
429 | RESOURCE_EXHAUSTED |
La demande a été limitée, car le nombre maximal de requêtes de projet a été atteint. | Vous avez dépassé la limite de requêtes que vous avez configurée dans la console Google Cloud Platform. Cette limite est généralement définie sur 1 000 requêtes par jour et 100 secondes par utilisateur. Cette limite doit être configurée pour empêcher un ou plusieurs groupes d'utilisateurs d'épuiser votre quota quotidien, tout en permettant un accès raisonnable à tous les utilisateurs. Consultez la section Limiter l'utilisation des API pour configurer ces limites. |
Intervalle exponentiel entre les tentatives
En cas d'échec des requêtes, assurez-vous de relancer les requêtes avec un intervalle exponentiel entre les tentatives. Par exemple, si une requête échoue une fois, réessayez après une seconde. Si elle échoue à nouveau, réessayez après deux secondes, puis quatre secondes, etc. Cela garantit que les requêtes défaillantes ou les échecs à grande échelle n'inondent pas les serveurs de Google, car de nombreux clients tentent de relancer les requêtes très rapidement.
Questions fréquentes sur le dépannage
Problèmes de mise en œuvre
- À quelle fréquence dois-je échantillonner la position de mon véhicule ?
- Pour un résultat optimal, nous vous recommandons d'attendre toutes les 1 à 10 secondes.
- Le nombre de points que je peux envoyer par requête est-il limité ?
- Oui, une requête ne peut pas comporter plus de 100 points.
- Quel niveau de précision dois-je utiliser pour stocker mes paires latitude/longitude alignées ?
- Pour vous assurer que les tracés balisés suivent les routes à tous les niveaux de zoom, même au niveau maximal de zoom, vous devez stocker vos paires latitude/longitude alignées avec sept décimales.
- Puis-je utiliser des polylignes encodées pour afficher des tracés ancrés ?
- Les polylignes encodées ne sont spécifiées qu'avec une précision de cinq décimales, ce qui génère une erreur d'environ deux mètres. Les polylignes encodées ne sont donc pas adaptées si vous souhaitez que vos tracés alignés suivent la route à des niveaux de zoom élevés.
Problèmes courants
- Certains points ne sont pas ancrés ou mes tracés présentent des blancs. Comment puis-je corriger cela ?
-
- Si vous échantillonnez vos points à intervalles réguliers, assurez-vous qu'ils sont échantillonnés à intervalles plus courts (toutes les 1 à 10 secondes). Si vous utilisez un intervalle plus long (par exemple, 60 secondes), l'algorithme de suivi du tracé de la route risque de ne pas pouvoir déterminer les routes empruntées avec une précision suffisante.
- Si vous cliquez manuellement sur une carte pour créer des points, il est très facile de créer des trajets avec peu de points ou des points creux que l'algorithme d'ancrage ne gère pas bien. L'algorithme d'ancrage fonctionne mieux pour les points proches les uns des autres. Essayez la démo de Snap to Roads ou utilisez l'inspecteur de routes pour tester vos chemins.
- Pourquoi mes trajets alignés sont-ils irréguliers ou légèrement décalés par rapport à la route lorsque je fais un zoom avant ?
-
- Triez-vous la précision des paires latitude/longitude alignées avant de les afficher ? Le stockage de paires latitude/longitude alignées avec une précision inférieure à sept décimales entraîne des erreurs de précision lorsque le tracé s'affiche sur la carte.
- Utilisez-vous des polylignes encodées ? Les polylignes encodées tronquent les paires latitude/longitude à 5 décimales, ce qui génère une erreur de plusieurs mètres, ce qui donne lieu à des lignes irrégulières ou légèrement décalées de la route à des niveaux de zoom élevés.
Si aucun de ces cas de figure ne se présente, il est possible que les tuiles de carte aient été mises à jour récemment, ce qui les a désynchronisées avec l'index de route utilisé pour l'ancrage. Si seulement quelques-unes de vos requêtes sont concernées, cela peut en être la cause. Étant donné que Google Maps est régulièrement mis à jour, ce problème peut survenir de temps en temps et se produire plus souvent si vous consultez régulièrement d'anciens tracés sur une carte (par exemple, des tracés datant de plusieurs semaines). Pour une visualisation optimale, rattachez les anciens tracés juste avant de les afficher sur une carte, afin de minimiser les incohérences entre les tuiles de carte et l'index de route utilisé pour l'ancrage.
- Pourquoi la limitation de vitesse de la route X ne s'affiche-t-elle pas correctement ?
- Les limitations de vitesse proviennent de plusieurs sources dont la précision et la couverture varient.
Si vous trouvez un schéma (par exemple, des limitations de vitesse pour un type de route spécifique ou une zone spécifique qui est systématiquement incorrecte), veuillez nous le signaler en procédant comme suit :
- Ouvrez Google Maps sur votre ordinateur OU dans l'application Google Maps pour Android.
- Ouvrez le menu sur la gauche.
- Sélectionnez Envoyer des commentaires. Remarque: Vous serez peut-être invité à vous connecter.
- Sélectionnez Modifier la carte.
- Sélectionnez la section de route que vous souhaitez modifier.
- Sélectionnez Suivant.
- Dans le champ "Autre", indiquez que la limitation de vitesse est incorrecte pour cette route.
- Sélectionnez Envoyer.
- Pourquoi mon itinéraire accroché prend-il des angles au lieu de suivre la route ?
-
Pour résoudre ce problème, vérifiez les points suivants :
- Assurez-vous que le paramètre
interpolate
est défini surtrue
. - Vérifiez que les points de données d'origine sont échantillonnés à intervalles suffisamment proches (toutes les 1 à 10 secondes).
- Assurez-vous que le paramètre
- Pourquoi est-ce que je reçois un grand nombre de sections de route renvoyées dans le tracé tracé pour une route sans changement de limitation de vitesse ?
- Lorsque le paramètre
interpolate
est défini surtrue
, la requête "Snap-to-road" renvoie une polyligne qui suit les intersections, les courbes et les ronds-points. Si les courbes de route sont renvoyées, plusieurs sections de route sont renvoyées même si la limitation de vitesse ne change pas, afin de créer une polyligne qui suit de près la géométrie de la route.