如何使用 Google Places Javascript API 搜索附近(自动从浏览器获取坐标)?

Posted

技术标签:

【中文标题】如何使用 Google Places Javascript API 搜索附近(自动从浏览器获取坐标)?【英文标题】:How to search for nearby (getting coordinates from browser automatically) with Google Places Javascript API? 【发布时间】:2016-04-23 08:04:02 【问题描述】:

我正在开发一个网站,我需要一个预先填写离 Google 地方信息最近的城市的文本框。我目前正在使用自动完成来搜索附近,它确实要求浏览器的位置许可,但是我如何使用 API 本身搜索附近的城市,而不用费心从浏览器获取用户的位置并将其传递给 Google Places API 调用?由于 Google 已经从浏览器中获取了我的位置,它不应该(从逻辑上)搜索与我在 nearbySearch 中的当前位置相关的附近地点,还是有其他方法?

【问题讨论】:

【参考方案1】:

好的,

我最终从浏览器本地获取位置,然后将位置传递给 Places API,因为 Places API 显然没有这种(非常基本的)功能。这是我获得位置的方式:

if (navigator.geolocation) 
    navigator.geolocation.getCurrentPosition(function (position) 
        var pos = 
            lat: position.coords.latitude,
            lng: position.coords.longitude
        ;
        //service is a PlacesService instance.
        var req = 
            location: pos,
            radius: '50000',
            types: ['(cities)']
        ;

        service.nearbySearch(req, function (results, status) 
           ...
        );

【讨论】:

以上是关于如何使用 Google Places Javascript API 搜索附近(自动从浏览器获取坐标)?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Google 地图搜索我自己的位置数据(与 Places 搜索 API 的功能相同,但用于我自己的“地点”)

如何从 Google Places API 获取地点描述

如何从 google.maps.places.Autocomplete 获得超过 5 个结果?

Google Places Autocomplete - 如何获取纬度和经度?

如何使用 Google Places Javascript API 搜索附近(自动从浏览器获取坐标)?

如何在 iOS 版 Google Places API 中查找当前用户位置