API на Google Geocoding връща грешен адрес, но картите на Google показват правилно местоположение

Използвам API за геокодиране на Google за връщане на координатите на място, използвайки URL: http://maps.googleapis.com/maps/api/geocode/json?address=Saints%20Peter%20&%20Paul%20Parish%204070%20Central%20Parkway%20East,%20Misissauga,%20L4Z%201T6,+CA&sensor=false

Адресът на мястото е:

Saints Peter & Paul Parish, 4070, Central Parkway East, Mississauga, L4Z 1T6.

При търсене в Google Maps връща правилната позиция, но когато използва горния URL за получаване на координати във формат JSON, връща някои координати в Маями, САЩ, докато моят адрес е в Мисисауга, Канада.

Това е действителното местоположение при търсене на същия адрес в Google Карти: https://www.google.co.in/maps/preview#!q=Saints+Peter+%24+Paul+Parish%2C+204070%2C+Central+Parkway+East%2C+Mississauga%2C+L4Z+1T6&DATA=!4M10!1M9!4M8!1M3!1D126887!2D76.3082933!3d9.982827!=

но върнатите координати са 25.7598220, -80.2133820, което е в Maimi


person melvindidit    schedule 25.07.2013    source източник


Отговори (1)


Върнатият резултат е равен на http://maps.googleapis.com/maps/api/geocode/json?address=Saints%20Peter%20&sensor=false

трябва да кодирате и амперсанда (с %26), в противен случай всичко, което следва амперсанда, ще бъде взето като нов параметър, а не като част от адреса

правилен резултат: http://maps.googleapis.com/maps/api/geocode/json?address=Saints%20Peter%20%26%20Paul%20Parish%204070%20Central%20Parkway%20East,%20Mississauga,%20L4Z%201T6,%20CA&sensor=false

person Dr.Molle    schedule 25.07.2013