【问题标题】:Multiple addresses (not LatLongs) in Google Maps谷歌地图中的多个地址(不是经纬度)
【发布时间】:2014-10-11 21:15:38
【问题描述】:

女士们,先生们,

加长版

我有一个数据库,其中包含我需要在 Google 地图上绘制并嵌入到我的网页中的地址。地址以文本形式显示,而不是 LatLong,因此:

“芝麻街22号,小村镇,AB1 9YZ”

就像我说的,我有很多这样的,它们都需要在一张地图上绘制。

我很高兴使用 jQuery/Javascript、PHP、XML 等来实现它。

我看到很多网站都在这样做,看起来很容易,例如:

但是,我不知道 Yell 是使用 LatLongs 还是使用完整地址。无论如何,我手头只有地址。

短版

需要在一个 Google 地图窗口中绘制多个文本地址,并将其嵌入到我的站点中。

免责声明

我已经在网上搜索了一个多星期,无法找到明确的答案。我确实找到了可能被归类为答案的内容(不,不可能),但我发现这很难相信在这个时代,我们可以相对轻松地使用网站做的事情,现在。

也许我很乐观……

你们任何人可以提供的任何帮助都绝对是金子,非常感谢!

非常感谢!

丹!

【问题讨论】:

    标签: javascript google-maps geolocation google-maps-markers


    【解决方案1】:

    您需要地理编码您的地址,即将它们转换为纬度/经度坐标,然后添加它们。

    如果您已经在使用 Google,那么显而易见的选择是使用 Google 的地理编码器。

    您可以使用服务器端Google Maps Geocoding API,如果您创建帐户和 API 密钥,您可以像这样对地址进行地理编码:

    https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=API_KEY
    

    返回的 JSON 包括 lat/lng 等。用它把它放在你的地图上。

    或者(这通常是更好的解决方案),您可以使用client side javascript geocoder built into the javascript api,方式类似于以下:

    var geocoder = new google.maps.Geocoder();
    var address = "Mountain View, CA"
    geocoder.geocode( { 'address': address}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {
        // results contains multiple locations, ordered by estimated relevance
        var marker = new google.maps.Marker({
            map: map,
            position: results[0].geometry.location
        });
      } else {
        alert("Geocode was not successful for the following reason: " + status);
      }
    });
    

    This article 提供了您可能想要采用的客户端策略的一个很好的示例。

    【讨论】:

    • 感谢您的回复!请原谅我,我对 API 不太了解,所以目前正在努力解决问题。因此,如果我有 100 个地址,我必须在此链接中输入每个地址以获取 LatLong,然后再进行绘图?
    • 这取决于你想做什么。如果您有一组固定的地址,我会简单地使用服务器端地理编码(使用该链接和 api 密钥)来一劳永逸地对它们进行地理编码。如果您的地址具有更动态的性质,请使用地理编码器 api 中内置的客户端地理编码器。这样,您就不会遇到速率限制。
    • 好的,谢谢。我会有很多地址,但还不足以遇到限制,我不认为。这是一个相对较小的网站/企业。
    • 请记住,如果您使用客户端地理编码,速率限制是针对每个用户的,因此 google 建议几乎总是使用客户端地理编码。
    • 如果您只是创建一次性的公司地址地图,您可能会对使用 Google Fusion Tables 感兴趣。添加您的地址、地理编码并发布地图!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-13
    • 1970-01-01
    • 2012-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多