Maison > développement back-end > Tutoriel C#.Net > H5 combiné avec la carte Baidu pour réaliser un exemple de tutoriel de positionnement GPS

H5 combiné avec la carte Baidu pour réaliser un exemple de tutoriel de positionnement GPS

零下一度
Libérer: 2017-06-23 16:50:30
original
2162 Les gens l'ont consulté

Avant-propos

À l'heure actuelle, nous utilisons le positionnement lors de l'exécution de m-end. Lorsque l'utilisateur ouvre la page h5 pour la première fois, le positionnement GPS sera démarré et combiné avec la carte Baidu pour trouver la ville. Selon notre idée logique, le positionnement GPS est utilisé pour obtenir la longitude et la latitude, qui sont ensuite envoyées en arrière-plan pour appeler une interface sur Baidu afin de trouver le nom de la ville.

1. Après avoir interrogé le nom de la ville, nous interrogeons l'identifiant de la ville correspondant dans notre propre base de données en fonction du nom de la ville (la requête sera très fréquente, elle peut être basée sur une requête de cache XML, ou elle peut être placé dans redis)

2. À des fins d'assurance, nous conserverons également un ensemble d'informations sur la ville basées sur la longitude et la latitude dans notre propre bibliothèque pour éviter que le positionnement ne soit affecté lorsque l'interface n'est pas disponible.

Positionnement GPS H5

 1  (function () { 2         var 3             isGeolocation = false, 4             lat = 0, 5             lng = 0, 6             coords = null; 7              8         if (navigator.geolocation) { isGeolocation = true; }; 9         if (isGeolocation) {10             function getPosSuccess(position) {11                 coords = position.coords;12                 lat = coords.latitude, lng = coords.longitude;13                 $.ajax({14                     type: 'GET',15                     dataType: 'json',16                     url: '/Home/GetPositionArea',17                     data: { 'lat': lat, 'lng': lng },18                     success: function (data) {19 20                     }21                 });22             };23             function getPosError(err) {24                 switch (err) {25                     case err.PERMISSION_DENIED:26                         console.log("您拒绝了共享位置,可手动选择城市。");27                         break;28                     case err.POSITION_UNAVAILABLE:29                         console.log("无法获取当前位置");30                         break;31                     case err.TIMEOUT:32                         console.log("获取位置超时");33                         break;34                     default:35                         console.log("未知错误");36                         break;37                 }38                 39             };40             navigator.geolocation.getCurrentPosition(getPosSuccess, getPosError, null);41         } else {42             43         };44 45     })();
Copier après la connexion

Combiné avec l'interface Baidu pour interroger des villes spécifiques

 JsonResult GetPositionArea( lng,  api = result =
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal