Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
API Geolocation (géolocalisation)
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
Contexte sécurisé: Cette fonctionnalité est uniquement disponible dans descontextes sécurisés (HTTPS), pour certainsnavigateurs qui la prennent en charge.
L'APIGeolocation permet à une personne, si elle le veut, de fournir sa position géographique à une application web. Pour respecter la vie privée, la permission est demandée auprès de l'utilisatrice ou de l'utilisateur avant la récupération des informations de géolocalisation.
Les extensions web qui souhaitent utiliser l'objetGeolocation doivent ajouter la permissiongeolocation à leur manifeste. Le système d'exploitation demandera alors à la personne la permission d'accéder à l'emplacement lors de la première fois.
Dans cet article
Concepts et utilisation
On souhaite parfois utiliser les informations géographiques d'une personne, par exemple pour indiquer son emplacement sur une carte, ou pour afficher des informations pertinentes par rapport au lieu actuel.
L'APIGeolocation s'utilise en appelantnavigator.geolocation. Cela va déclencher la demande de permission avec le navigateur. Lorsque la permission est donnée d'accéder aux données de géolocalisation, le navigateur utilisera le meilleur outil à sa disposition sur l'appareil pour déterminer cette position (par exemple, le GPS).
La position géographique peut alors être utilisée dans le code avec :
Geolocation.getCurrentPosition()Qui récupère l'emplacement actuel de l'appareil.
Geolocation.watchPosition()Qui enregistre une fonction de rappel qui sera appelée à chaque fois que l'emplacement évolue, en renvoyant la position à jour.
Dans les deux cas, ces méthodes utilisent jusqu'à trois arguments :
- Une fonction de rappel obligatoire pour les cas de succès.
- Si la récupération des informations d'emplacement s'est déroulée sans problème, la fonction de rappel est appelée avec un seul paramètre qui est un objet
GeolocationPositionqui fournit un accès aux données d'emplacement.
- Si la récupération des informations d'emplacement s'est déroulée sans problème, la fonction de rappel est appelée avec un seul paramètre qui est un objet
- Une fonction de rappel optionnelle pour les cas d'erreur.
- Si la récupération des informations d'emplacement a échoué, la fonction de rappel est appelée avec un seul paramètre qui est un objet
GeolocationPositionErrorqui fournit des informations sur l'erreur.
- Si la récupération des informations d'emplacement a échoué, la fonction de rappel est appelée avec un seul paramètre qui est un objet
- Un objet optionnel qui fournit des options pour la récupération des données d'emplacement.
Pour plus d'informations sur l'utilisation de cette API, nous vous conseillons de lire le guideUtiliser l'APIGeolocation.
Interfaces
GeolocationIl s'agit de la classe principale de cette API. Elle contient des méthodes pour récupérer la position actuelle, suivre les modifications de position, arrêter de suivre les déplacements.
GeolocationPositionReprésente la position d'une personne. Une instance de
GeolocationPositionest renvoyée lors d'un appel réussi à l'une des méthodes deGeolocation, dans une fonction de rappel de réussite. Il contient un horodatage et une instance deGeolocationCoordinates.GeolocationCoordinatesReprésente les coordonnées de la position d'une personne. Une instance de
GeolocationCoordinatescontient les informations de latitude, longitude et d'autres informations importantes relatives à l'emplacement.GeolocationPositionErrorUn objet
GeolocationPositionErrorest renvoyé par un des appels infructueux à l'une des méthodes deGeolocation, dans une fonction de rappel en cas d'erreur. Il contient un code d'erreur et un message.Navigator.geolocationLe point d'entrée pour cette API. Elle renvoie une instance de
Geolocationà partir de laquelle on peut accéder aux autres fonctionnalités.
Exemples
Voir le guideUtiliser l'APIGeolocation pour un exemple de code.
Spécifications
| Specification |
|---|
| Geolocation> # geolocation_interface> |
Compatibilité des navigateurs
Disponibilité
Comme la détermination de l'emplacement à partir des réseaux Wi-Fi souvent fournie par Google, l'APIGeolocation de base pourrait être indisponible en Chine. Auquel cas, vous pouvez utiliser des fournisseurs tiers commeBaidu,Autonavi, ouTencent. Ces services utilisent l'adresse IP de la personne et/ou une application locale pour déterminer l'emplacement.