2014-11-05 129 views
0

我正在使用Google地理编码器来检查用户输入的地址是否正确。例如,用户输入正确的街道和城市名称,但输入的邮政编码错误。我想检查谷歌的邮政编码是否与输入的不同,并显示一个建议。 但这不适用于巴西,荷兰和其他国家。例如,一个有效的巴西邮政编码是01421-020,但是当我发送这个邮政编码时,地理编码器只返回01421.这也发生在其他国家。为什么谷歌不能返回完整的邮政编码?Google地理编码返回不完整的邮政编码

编辑: 我使用这个包:https://github.com/geocoder-php/Geocoder 当我尝试提交此地址:

R.佩德罗索,215,圣保罗01322-010

的执行查询链接是:https://maps.googleapis.com/maps/api/geocode/json?address=R.%20Pedroso%2C%20215%2001322-010%20S%C3%A3o%20Paulo&sensor=false&language=pt_BR&region=BR 如果你点击它,你可以看到返回的邮政编码的结果是01322而没有-010在最后

+0

你能否提供一个示例请求?只需发送原始邮政编码就行不通,因为即使对于人类来说,这也很难正确解释...... – mensi 2014-11-05 13:14:44

+0

它正在返回部分匹配。如果您删除街道号码,则会找到完全匹配的号码,并返回完整的邮政编码。 – 2014-11-05 14:53:15

+0

@ GabyakaG.Petrioli这实际上有效,但我需要街道号码,因为我正在使用的系统提供家庭服务,我们需要一个详细的地址。任何想法为什么谷歌提供街道号时只返回部分邮政编码? – faust 2014-11-05 15:15:08

回答

4

我对巴西邮政编码不太熟悉,但是如果我理解正确,那么您的8位邮政编码将与我们在美国的+4邮政编码类似。美国的大多数邮件只能使用5位数的邮政编码,例如95014,即使完整的邮政编码可能为95014-7845。美国邮政将仍然提供这种邮件,并且+4代码不经常使用。

看起来Google不支持完整的8位或9位邮政编码(即使在美国也是如此),我认为这是因为他们认为额外数字不是必需的,或者他们无法访问数据。

相关问题