2014-11-05 160 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位郵政編碼(即使在美國也是如此),我認爲這是因爲他們認爲額外數字不是必需的,或者他們無法訪問數據。

相關問題