Solicita valores localizados

Los valores de respuesta localizados son un campo de respuesta adicional que proporciona texto localizado para los valores de los parámetros que se muestran. Se proporciona texto localizado para la duración del viaje, la distancia y el sistema de unidades (sistema métrico o imperial). Puedes solicitar valores localizados con una máscara de campo y especificar el idioma y el sistema de unidades, o bien usar los valores que infiere la API. Para obtener más detalles, consulta LocalizedValues.

Por ejemplo, si especificas un código de idioma para unidades imperiales y alemanas (de), obtendrás un valor de distanceMeters de 49889.7, pero también texto localizado que proporciona esa medición de distancia en unidades imperiales y alemanas, es decir, "31 Meile".

A continuación, se muestra un ejemplo de lo que verías en el caso de los valores localizados:

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

Si no especificas el idioma o el sistema de unidades, la API infiere el idioma y las unidades de la siguiente manera:

  • El método ComputeRoutes infiere la ubicación y las unidades de distancia a partir del punto de referencia de origen. Por lo tanto, para una solicitud de enrutamiento en EE.UU., la API infiere el idioma en-US y las unidades IMPERIAL.
  • El método ComputeRouteMatrix utiliza el idioma "en-US" y las unidades METRIC de forma predeterminada.

Cómo solicitar valores localizados

Para incluir valores localizados en la respuesta, debes hacer lo siguiente:

  1. Solicita valores localizados en tu máscara de campo. Por ejemplo:

    REST

    -H X-Goog-FieldMask: routes.localized_values

    RPC

    const (fieldMask = "routes.localized_values")
  2. Si quieres que los valores localizados se muestren en un idioma o un sistema de unidades específicos, debes especificar el código de idioma y el sistema de unidades:

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

    Para obtener más información, consulta Idiomas compatibles.

    Por ejemplo, este fragmento de código especifica el idioma como alemán (de) y unidades METRIC:

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

Ejemplo de solicitud

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'

Ejemplo de respuesta

La respuesta muestra valores localizados para los campos distance, duration y staticDuration:

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