-1
votes

Leaflet: Comment obtenir CountryCode (Latlng)

J'utilise une notice avec OpenStreetMap (JavaScript) et souhaitez obtenir le code de pays pour la latitude et la longitude données données, de sorte que je puisse le transmettre (variable) à une fonction. Comment puis-je le faire?

Merci d'avance!


1 commentaires

Marquez ma réponse comme acceptée si cela résolvait votre problème. Merci!


3 Réponses :


1
votes

Il existe un service Web qui renvoie un code de pays et prend en tant que paramètres la latitude et la longitude. Vérifiez le Documentation

Vous devez créer un compte d'utilisateur sur http://www.geonames.org/login dans afin d'utiliser le service.


0 commentaires

0
votes

Essayez de vérifier cette API

http://api.geonames.org/countryCodeJSON?lat=you_lat_value3&lng=your_lang_value&username=demo


2 commentaires

Merci! Je commence à apprendre JavaScript et je ne peux tout simplement pas trouver un moyen d'extraire cette valeur (par exemple à partir de [ api.geonames.org/... la valeur" at '). J'ai essayé la méthode de récupération mais je ne peux pas comprendre. Savez-vous comment je peux obtenir cette valeur en JavaScript? (comme ça: console.log ("la valeur de l'URL");)


fetch (' api.geonames.org/... ). (réponse => réponse.json ()) .Ce (données => {console.log (données) // impression résulte de intervention.json () in grequinest}) .Catch (erreur => Console.Error (erreur))



1
votes

Si vous n'avez besoin que de ces informations sporadiquement, vous pouvez utiliser la fonction qui renvoie des coordonnées LATLNG pour un pays spécifique. Tout ce que vous avez à faire est de déplacer la carte à une vue spécifique du pays et vous recevrez des coordonnées dans la console.log. Utilisez cette fonction map.getCenter () code> Vous pouvez la comparer avec les données que cette page Geonames. org

p>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.js"></script>

<div id="map"></div>


3 commentaires

Merci pour votre réponse. Je voudrais construire une fonction comme codecountry de fonction (letlng) {.... var cessionCode = [Enregistrer ici CountryCode]; ......} Cette fonction est écrite dans un document JavaScript et appelé dans un HTML. Existe-t-il un moyen (par exemple via une autre API) pour renvoyer le code de pays en donnant le paramètre latitude et longitude?


Je vous ai donné un lien vers l'API nominatim.openstreetmap.org/... Tout ce que vous avez à faire est de transmettre les données et d'obtenir le type "administratif" de JSON et que vous disposez des coordonnées exactes;)


Je n'ai pas besoin de coordonnées. J'ai besoin du code de pays pour la latitude et la longitude données. Savez-vous si la brochure fournit une fonction qui retourne le code de pays?