Запрос локализованных значений

Значения локализованного ответа — это дополнительное поле ответа, которое предоставляет локализованный текст для возвращаемых значений параметров. Локализованный текст содержит информацию о продолжительности поездки, расстоянии и системе единиц измерения (метрической или британской). Вы запрашиваете локализованные значения, используя маску поля, и можете либо указать язык и систему единиц, либо использовать значения, полученные API. Дополнительные сведения см. в разделе LocalizedValues .

Например, если вы укажете код языка для немецких (de) и имперских единиц, вы получите значение для distanceMeters 49889,7, а также локализованный текст, указывающий это измерение расстояния в немецких и имперских единицах, то есть «31 Meile».

Вот пример того, что вы увидите для локализованных значений:

{ "localized_values":
  {
    "distance": { "text": "31,0 Meile/n" },
    "duration": { "text": 38 Minuten}.
    "static_duration": { "text": 36 Minuten}.
  }
}

Если вы не укажете язык или систему единиц, API определит язык и единицы измерения следующим образом:

  • Метод ComputeRoutes определяет единицы местоположения и расстояния от исходной путевой точки. Таким образом, для запроса маршрутизации в США API определяет язык en-US и IMPERIAL единицы измерения.
  • По умолчанию метод ComputeRouteMatrix использует язык en-US и МЕТРИЧЕСКИЕ единицы измерения.

Чтобы запросить локализованные значения

Чтобы включить локализованные значения в ответ, вам необходимо сделать следующее:

  1. Запросите локализованные значения в маске поля. Например:

    ОТДЫХ

    -H X-Goog-FieldMask: routes.localized_values

    ПКП

    const (fieldMask = "routes.localized_values")
  2. Если вам нужны локализованные значения на определенном языке или системе единиц, укажите код языка и систему единиц:

    "languageCode": "language_code",
    "units": "METRIC | IMPERIAL",

    Дополнительную информацию см. в разделе Языковая поддержка .

    Например, в этом фрагменте кода в качестве языка указаны немецкие (de) и МЕТРИЧЕСКИЕ единицы измерения:

    "languageCode": "de",
    "units": "METRIC",

Пример запроса

curl -X POST -d '{
  "origin": { "location": {
    "latLng": { "latitude": 37.7873146, "longitude": -122.4159327 } }
  },
  "destination": { "location": {
    "latLng": { "latitude": 37.7621008, "longitude": -122.4382503 } }
  },
  "travelMode": "DRIVE",
  "computeAlternativeRoutes": true,
  "languageCode": "de",
  "units": "METRIC"
}' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.localized_values' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Пример ответа

Ответ возвращает локализованные значения для полей distance , duration и staticDuration :

{
    "localizedValues": {
        "distance": {
            "text": "15,5 km"
         },
        "duration": {
            "text": "16 Minuten"
        },
        "staticDuration": {
            "text": "16 Minuten"
        }
    }
}