使用 Leaflet 将用户输入的位置添加到 OpenStreetMap.js

我正在尝试创建用户输入位置的地图,但是要执行此操作,我需要将输入的城市转换为其纬度和经度。这使我能够使用传单轻松绘制它们.jsL.marker(point).addTo(map)

给定“伦敦”的输入,有没有办法使用OpenStreetMap API来获取这些值?这里有很少的API工具可以在不需要API密钥的情况下完成这项任务(来自我的研究)。

如果可能的话,我想避免使用谷歌地图API,并希望得到任何帮助,无论是API推荐还是OpenStreetMap的想法,因为我对javascript相对较新。

提前致谢!


慕容3067478
浏览 127回答 1
1回答

qq_花开花谢_0

正如评论中所建议的那样,解决方案是使用提名,特别是他们的检索查询。我最终使用jQuery的getJson函数从API获取数据,如下所示。$(function () {  geocoding = function (city, country) {    var url = `https://nominatim.openstreetmap.org/search?city=${city}&country=${country}&format=json`    $.getJSON(url, function (data) {      //data is the JSON string      lat = data[0].lat      lon = data[0].lon      ...    });  }})
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript