要求本地化值

本地化回應值是額外的回應欄位,可為傳回的參數值提供本地化文字。我們提供經過時間、距離和單位系統 (公制或英制) 的本地化文字。您可以使用欄位遮罩要求經過本地化的值,並指定語言和單位系統,或是使用 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. 在欄位遮罩中要求本地化值。例如:

    REST

    -H X-Goog-FieldMask: routes.localized_values

    RPC

    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'

回應範例

回應會傳回 distancedurationstaticDuration 欄位的本地化值:

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