本地化的响应值是一个额外的响应字段,用于为返回的参数值提供本地化文本。系统会针对行程时长、距离和单位制(公制或英制)提供本地化文本。您可以使用字段掩码来请求本地化的值,可以指定语言和单位制,也可以使用 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”语言和 METRIC 单位。
请求本地化的值
如需在响应中包含本地化的值,您需要执行以下操作:
请求字段掩码中的本地化值。例如:
REST
-H X-Goog-FieldMask: routes.localized_values
远程过程调用 (RPC)
const (fieldMask = "routes.localized_values")
如果您需要特定语言或单位制的本地化值,请指定语言代码和单位制:
"languageCode": "language_code", "units": "METRIC | IMPERIAL",
如需了解详情,请参阅语言支持。
例如,以下代码段将语言指定为德语 (de),以 METRIC 单位:
"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" } } }