【问题标题】:Google Maps Autocomplete: how to get lat/lng?谷歌地图自动完成:如何获得纬度/经度?
【发布时间】:2012-06-13 00:46:58
【问题描述】:

我正在使用 Google 地图的自动完成功能进行地理编码。它似乎返回了很多数据,但不是 lat/lng。有没有办法获取这些信息?我想将它传回我的后端应用程序以进行进一步处理。

【问题讨论】:

  • 您只是提出了很多问题(429 个问题与 15 个答案),而没有正确描述您想要做什么或您尝试自己解决的问题。它给这个网站增加了噪音。
  • 它们不是重复的。一个处理尝试确定一个矩形,另一个处理 API 返回的响应。
  • 您是指地点自动填充功能吗?您能否提供更多信息,如果不是太冗长,可能提供一些代码?

标签: google-maps google-maps-api-3


【解决方案1】:

好的,我不熟悉地点或自动完成功能。但看起来你正在寻找的是

autocomplete.getPlace().geometry.location

为了演示我使用this example 并添加了上面的行来创建this JSFiddle,您可以在其中输入地名,当它被选中时,会创建一个带有LatLng 的信息窗口。

特别是它会监听用户的选择,然后刷新信息窗口。

google.maps.event.addListener(autocomplete, 'place_changed', function() {
      infowindow.close();
      var place = autocomplete.getPlace();
       ...
      infowindow.setContent('<div><strong>' + place.name + 
        '</strong><br>' + address + "<br>" + place.geometry.location);

【讨论】:

  • 这种方法不会带来长期和纬度。
  • @neoplomero 实际上是这样,拥有autocomplete.getPlace().geometry.location 您可以访问autocomplete.getPlace().geometry.location.lat()autocomplete.getPlace().geometry.location.lng()
  • 如何获取 Geometry 属性?
【解决方案2】:

几何对象的原型中存在称为 lat() 和 lng() 的方法。因此,要获取值,只需使用以下内容:

var place = autocomplete.getPlace();

var lat = place.geometry.location.lat(),
    lng = place.geometry.location.lng();

// Then do whatever you want with them

console.log(lat);
console.log(lng);

console.warn('Warning: I didn\'t test this code!');

【讨论】:

  • 这会用完配额中的请求吗?
  • @DavidTan 是的,Google Places API Web 服务和 Place Autocomplete 共享使用配额。如果超出限制,status 字段的字符串值为 OVER_QUERY_LIMIT。您可以在此处阅读有关限制:developers.google.com/places/web-service/usage
【解决方案3】:

其他答案缺少关键组件。当您调用setFields 时,您需要包括'geometry'。请注意,更多字段可能会花费更多。

例如:

// Avoid paying for data that you don't need by restricting the set of
// place fields that are returned to just the address components.
autocomplete.setFields(['address_component', 'geometry']);

See docs

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    相关资源
    最近更新 更多