saDam
@saDam
Microservices, .NET Core, EF Core, SQL, RabbitMQ,

Что не так с геокодером Google?

Столкнулись с проблемой в работе гуглового геокодера:
Делаем запрос к геокодеру:
Request: Вена
Ответ:
"address_components" : [
            {
               "long_name" : "Vienna",
               "short_name" : "Vienna",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Vienna",
               "short_name" : "Vienna",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Austria",
               "short_name" : "AT",
               "types" : [ "country", "political" ]
            }
         ]


Request: Вена, Stephansplatz 3
Ответ:
"address_components" : [
            {
               "long_name" : "Saint Stephen's Cathedral",
               "short_name" : "Saint Stephen's Cathedral",
               "types" : [ "premise" ]
            },
            {
               "long_name" : "3",
               "short_name" : "3",
               "types" : [ "street_number" ]
            },
            {
               "long_name" : "Stephansplatz",
               "short_name" : "Stephansplatz",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Innere Stadt",
               "short_name" : "Innere Stadt",
               "types" : [ "sublocality_level_1", "sublocality", "political" ]
            },
            {
               "long_name" : "Wien",
               "short_name" : "Wien",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Wien",
               "short_name" : "Wien",
               "types" : [ "postal_town" ]
            },
            {
               "long_name" : "Wien",
               "short_name" : "Wien",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Austria",
               "short_name" : "AT",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "1010",
               "short_name" : "1010",
               "types" : [ "postal_code" ]
            }
         ]


Оба запроса с language=en и если обратить внимание на locality то при запросе города одно значение, а при запросе с уточнением до адреса то locality уже другой.

У нас мультиязычное приложение и мы парсим с гуглового геокодера ответ. И проблема в том, когда пользователь добавляет город в систему то поля добавляются по первому запросу, а при добавлении объекта в этом городе поля из второго ответа и конечно же проверку они не проходят. Кто сталкивался и как решали?
  • Вопрос задан
  • 399 просмотров
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Всё очень просто, как мне кажется. У них просто нет локализации для адресов. Поэтому адрес отдаётся на локальном языке. Это видно, если заменить язык на ru, то на русском приходит только country, всё остальное как есть.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы