我正在为我们的网站开发一个搜索插件,该插件允许用户使用 Google Places API 搜索任何位置,并列出我们的公寓及其到该位置的距离。
为了限制对用户的搜索,我向该方法添加了一些可能的限制:getPlacePredictions()
,该方法可在 Google Places API 对象中使用 google.maps.places.AutocompleteService( )
。
国家/地区:仅限德国
首选搜索区域:北莱茵-威斯特法伦州(德国的一个地区)
function pacGetSuggestions(searchString) {
// set autocomplete options
var pacOptions = {
input : searchString,
componentRestrictions : {country: 'de'}, // restrict results to germany
bounds : pacDefaultBounds, // add search area
};
// get suggestions
PAC.getPlacePredictions(pacOptions, pacDrawSuggestions);
}
到目前为止效果很好!
我的问题:
如何通过特定位置类型限制结果?有什么办法吗?
示例:
我不希望用户能够搜索酒店/旅馆等,因为这对我们来说是直接竞争。
如果用户输入“Hil”代表“Hill-Street”或“HillyBilly Pizza Place”,那么她不应显示“Hilton Hotels, Somethingstreet...”。
这可能吗?
最佳答案
在这里您可以找到支持的类型: https://developers.google.com/places/documentation/supported_types
您也可以按国家/地区进行过滤: 组件 — 您想要将结果限制到的一组位置。目前,您可以使用组件按国家/地区进行过滤。国家/地区必须以两个字符、ISO 3166-1 Alpha-2 兼容的国家/地区代码形式传递。例如:components=country:fr 会将您的结果限制为法国境内的地区。
https://developers.google.com/places/documentation/autocomplete
希望对你有帮助。
关于google-maps - Google Places API - getPlacePredictions 从结果中排除特定业务类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25404623/