Google places api 限制Google Places Autocomplete仅返回地址

Google places api 限制Google Places Autocomplete仅返回地址,google-places-api,Google Places Api,返回街道和城市以及其他较大区域。有可能只限于街道吗?我想你想要的是{types:['address']} 您可以在这个实时示例中看到这一点:(使用“Addresses”(地址)单选按钮)。这个问题很老了,但我想我会添加到它中,以防其他人遇到这个问题。不幸的是,将类型限制为“地址”并不能达到预期的结果,因为仍然包括路由。因此,我决定循环检查结果并执行以下检查: result.predictions[i].types.includes('street\u address') 不幸的是,我惊讶地发现我

返回街道和城市以及其他较大区域。有可能只限于街道吗?

我想你想要的是
{types:['address']}


您可以在这个实时示例中看到这一点:(使用“Addresses”(地址)单选按钮)。

这个问题很老了,但我想我会添加到它中,以防其他人遇到这个问题。不幸的是,将类型限制为“地址”并不能达到预期的结果,因为仍然包括路由。因此,我决定循环检查结果并执行以下检查:

result.predictions[i].types.includes('street\u address')

不幸的是,我惊讶地发现我自己的地址没有被包括在内,因为它返回了以下类型:
{types:['geocode','premise']}

因此,我决定启动一个计数器,任何在其类型中包含“地理编码”或“路线”的结果都必须包含至少一个要包含的其他术语(无论是“街道地址”或“房屋”或其他任何术语)。因此,路线被排除在外,任何具有完整地址的内容都将被包括在内。这不是万无一失的,但效果相当好

循环执行结果预测,并执行以下操作:

autocomplete = new google.maps.places.Autocomplete(input, { types: ['geocode'] });

嗯,你能解释一下吗?Google places按定义的半径和类别为你提供了一个位置列表。请给出一个你用
{types:['address']}尝试过的例子
没有将结果限制为只有
街道地址类型的结果。它还包括
路线类型的结果,即没有编号的道路。有没有办法将
路线
从结果中排除?@MaryKN这种行为不直观。这是故意的吗?我也有同样的问题,但最奇怪的是当服务器主机位于欧洲时,api工作正常,而当相同代码放置在位于美国的机器中时,api工作不正常
if (result.predictions[i].types.includes('street_address')) {
    // Results that include 'street_address' should be included
    suggestions.push(result.predictions[i])
} else {
    // Results that don't include 'street_address' will go through the check
    var typeCounter = 0;
    if (result.predictions[i].types.includes('geocode')) {
        typeCounter++;
    }
    if (result.predictions[i].types.includes('route')) {
        typeCounter++;
    }
    if (result.predictions[i].types.length > typeCounter) {
        suggestions.push(result.predictions[i])
    }
}