Javascript 谷歌地图api中的附近地点

Javascript 谷歌地图api中的附近地点,javascript,google-maps,google-maps-api-3,google-cloud-platform,Javascript,Google Maps,Google Maps Api 3,Google Cloud Platform,我必须开发一个网站,用户在上面输入特定位置的纬度和经度。根据纬度和经度,我应该获取附近的位置,并将其显示在谷歌地图上。到目前为止,我显示了一种类型的附近位置,例如餐馆,现在我想使用place API获取多个类型。搜索多个类型是目前Places API不支持的 存在此的现有功能请求:。我建议您在那里对您的用例进行注释,并启动它以接收更新。不幸的是,现在既不能使用多个类型进行搜索,也不能从查询中排除一个类型。谷歌的政策只是强迫人们发送更多的请求。有时候,人们会为自己不想要的东西付费,或者只需一次查询

我必须开发一个网站,用户在上面输入特定位置的纬度和经度。根据纬度和经度,我应该获取附近的位置,并将其显示在谷歌地图上。到目前为止,我显示了一种类型的附近位置,例如餐馆,现在我想使用place API获取多个类型。

搜索多个类型是目前Places API不支持的


存在此的现有功能请求:。我建议您在那里对您的用例进行注释,并启动它以接收更新。

不幸的是,现在既不能使用多个类型进行搜索,也不能从查询中排除一个类型。谷歌的政策只是强迫人们发送更多的请求。有时候,人们会为自己不想要的东西付费,或者只需一次查询就可以获得两倍/三倍的回报。
虽然没有第二个、第三个参数的搜索选项,但您仍然可以得到您想要的,当然需要付费。

这就是常规的NearbySearch请求的样子

var service = new google.maps.places.PlacesService(map);
let latLng = new google.maps.LatLng(latitude,longitude);

service.nearbySearch(
      {location: latLng, radius: 500, type: ['store']},
      function(results, status) {
        if (status !== 'OK') return;
            // results
        };
      });

如果你想得到多种类型,你必须为每种类型发送一个如下所示的请求

var service = new google.maps.places.PlacesService(map);
let latLng = new google.maps.LatLng(latitude,longitude);

service.nearbySearch(
      {location: latLng, radius: 500, type: ['store']},
      function(results, status) {
        if (status !== 'OK') return;
            // results for store
            service.nearbySearch(
                {location:latLng, radius: 1500, type : ['fire_station']},
            function(fireStationResult, fireStationStatus) {
                // firestation results here
                // and so on.
            }
            )
        };
      });

您必须在每个块中使用nearbySearch请求,因为它是异步工作的。

欢迎使用stackoverflow。请张贴你迄今为止为达到你的要求所做的努力。请参考:,