Google maps Google Places自动完成API的起点
我注意到:Google maps Google Places自动完成API的起点,google-maps,google-maps-api-3,autocomplete,google-places-api,Google Maps,Google Maps Api 3,Autocomplete,Google Places Api,我注意到: 当使用Google在我的台式计算机上放置自动完成API在字段中写入一些文本时,这些建议是在我的本地区(法国奥尔良)提出的 当使用Google Places Autocomplete API在我的手机上的字段中编写一些文本时,这些建议是在法国巴黎提出的,而我所在的地方不是巴黎 这可能是由于隐含的IP地理位置 如何强制Google Places Autocomplete输入字段“猜测”指定城市区域内的命题?(在我的例子中:奥尔良,因为我的网站专门针对该城市的用户)请尝试阅读下表中的“
- 当使用Google在我的台式计算机上放置自动完成API在
字段中写入一些文本时,这些建议是在我的本地区(法国奥尔良)提出的 - 当使用Google Places Autocomplete API在我的手机上的
字段中编写一些文本时,这些建议是在法国巴黎提出的,而我所在的地方不是巴黎
位置
和半径
参数,以主要从所需区域返回结果
因此,您的请求可能如下所示:
https://maps.googleapis.com/maps/api/place/autocomplete/json?input=SEARCH_STRING&location=ORLEANS_LAT,ORLEANS_LNG&radius=RADIUS_IN_METERS&key=YOUR_API_KEY
如果您使用google.maps.places.Autocomplete
class,请查看。有一个边界
参数,根据文档:
要在其中搜索位置的区域。结果偏向于,,
但不限于,包含在这些边界内的位置
还值得注意的是,在这两种API中都有一个组件
或组件限制
参数,允许您根据国家限制搜索。例如:
autocomplete.setComponentRestrictions({country:'fr'}) //to restrict results only to France.
在链接的文档中提供更多信息。尝试阅读链接中的“位置偏差”。您可以在请求中添加位置
和半径
参数,以主要从所需区域返回结果
因此,您的请求可能如下所示:
https://maps.googleapis.com/maps/api/place/autocomplete/json?input=SEARCH_STRING&location=ORLEANS_LAT,ORLEANS_LNG&radius=RADIUS_IN_METERS&key=YOUR_API_KEY
如果您使用google.maps.places.Autocomplete
class,请查看。有一个边界
参数,根据文档:
要在其中搜索位置的区域。结果偏向于,,
但不限于,包含在这些边界内的位置
还值得注意的是,在这两种API中都有一个组件
或组件限制
参数,允许您根据国家限制搜索。例如:
autocomplete.setComponentRestrictions({country:'fr'}) //to restrict results only to France.
在链接文档中有更多信息。我的网页中已经有一个
map
,所以我尝试了autocomplete.setBounds(map.getBounds())代码>设置当前贴图边界的首选项/偏差,但不幸的是,没有更改。。。您有什么想法吗?您必须将边界设置为希望返回结果的区域的边界。可以这样创建边界:new google.maps.LatLngBounds(new google.maps.LatLng(SOUTH_-LAT,WEST_-LNG),new google.maps.LatLng(NORTH_-LAT,EAST_-LNG))代码>因此,如果你的城市是法国奥尔良,这应该适合你自动完成.setBounds(新的google.maps.latlngbunds(新的google.maps.LatLng(47.8328874615686,1.7125700205077692),新的google.maps.LatLng(48.012343482282816,2.1403501718749567))代码>谢谢!如何才能将选择(不仅是偏见,而且是完全限制)完全限制在一个国家的特定行政区域?到目前为止,您只能按国家进行限制。检查setComponentRestrictions
类的Autocomplete
方法。尝试autocomplete.setComponentRestrictions({country:'fr'})
将结果仅限于法国。我的网页中已经有map
,所以我尝试了autocomplete.setBounds(map.getBounds())代码>设置当前贴图边界的首选项/偏差,但不幸的是,没有更改。。。您有什么想法吗?您必须将边界设置为希望返回结果的区域的边界。可以这样创建边界:new google.maps.LatLngBounds(new google.maps.LatLng(SOUTH_-LAT,WEST_-LNG),new google.maps.LatLng(NORTH_-LAT,EAST_-LNG))代码>因此,如果你的城市是法国奥尔良,这应该适合你自动完成.setBounds(新的google.maps.latlngbunds(新的google.maps.LatLng(47.8328874615686,1.7125700205077692),新的google.maps.LatLng(48.012343482282816,2.1403501718749567))代码>谢谢!如何才能将选择(不仅是偏见,而且是完全限制)完全限制在一个国家的特定行政区域?到目前为止,您只能按国家进行限制。检查setComponentRestrictions
类的Autocomplete
方法。请尝试autocomplete.setComponentRestrictions({country:'fr'})
将结果仅限于法国。