Xem tuyến đường có quãng đường ngắn hơn

Routes API có thể trả về các tuyến đường lái xe được tối ưu hoá cho quãng đường di chuyển ngắn hơn khi bạn bật các tuyến đường có quãng đường ngắn hơn.

Khi bạn yêu cầu một tuyến đường có quãng đường ngắn hơn, dịch vụ sẽ trả về những thông tin sau:

  • Tuyến đường mặc định là tuyến đường được tối ưu hoá chủ yếu cho ETA.
  • Một tuyến đường ngắn hơn được tối ưu hoá để giảm thiểu quãng đường di chuyển trong toàn bộ chuyến đi.

Khái niệm và lý do sử dụng

Tuyến đường có quãng đường ngắn hơn sẽ ưu tiên quãng đường hơn là sự thoải mái khi lái xe hoặc tốc độ. Ví dụ: phương tiện có thể ưu tiên đường nội đô thay vì đường cao tốc, đi theo đường đất hoặc cắt ngang bãi đỗ xe. Phương thức này không trả về bất kỳ thao tác nào mà Google Maps biết là bất hợp pháp.

Yêu cầu tuyến đường có quãng đường ngắn hơn

Yêu cầu của bạn phải đáp ứng các tiêu chí sau:

  • Đặt travelMode thành DRIVE, BICYCLE hoặc TWO_WHEELER.
  • Đặt requestedReferenceRoutes thành SHORTER_DISTANCE.
  • Đặt mặt nạ trường phản hồi để trả về các thuộc tính phản hồi liên kết với một tuyến đường có quãng đường ngắn hơn:
    • routes.routeLabels: Xác định từng tuyến là DEFAULT_ROUTE, SHORTER_DISTANCE hoặc DEFAULT_ROUTE_ALTERNATE.
    • routes.routeToken: Mã thông báo tuyến mà bạn có thể truyền đến Navigation SDK để truy xuất tuyến tuỳ chỉnh.
  • Không bao gồm bất kỳ điểm trung gian Via nào.
  • Không đưa tham số optimizeWaypointOrder vào.
  • Không bắt buộc: Đặt mặt nạ trường phản hồi để trả về các thuộc tính sau đây liên kết với cả tuyến đường mặc định và tuyến đường có quãng đường ngắn hơn:
    • routes.distanceMeters: Trả về quãng đường của tuyến.
    • routes.duration: Trả về thời lượng của tuyến đường.

Để biết thông tin tham khảo, hãy xem ReferenceRouteRouteLabel.

Yêu cầu mẫu: Tuyến đường có quãng đường ngắn hơn

Mã sau đây cho thấy một yêu cầu về tuyến đường có quãng đường ngắn hơn. Trong ví dụ này, bạn sử dụng mặt nạ trường phản hồi để trả về các trường liên kết với cả tuyến đường mặc định và tuyến đường có quãng đường ngắn hơn bằng các mặt nạ trường sau:

  • routes.distanceMeters
  • routes.duration
curl -X POST -H 'content-type: application/json' -d '{
  "origin": {
    "location": {
      "latLng": {
        "latitude": 41.76904801292959,
        "longitude": -72.67374935684933
      }
    }
  },
  "destination": {
    "location": {
      "latLng": {
        "latitude": 41.823042361105024,
        "longitude": -71.40933143059424
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE",
  "requestedReferenceRoutes": ["SHORTER_DISTANCE"],
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY \
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Ví dụ về phản hồi tuyến đường ngắn hơn

{
  "routes": [
    {
      "distanceMeters": 138943,
      "duration": "5373s",
      "routeToken": "CrsCCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXcklWWFo2cjhDZmltdk9NUDQ3aU1nUU0QBRpPCk0KGAoNCgIIAREAAAAAAIBmQBF56SYxqDm4QBISCAAQAxAGEBMQEhgCQgQaAggFIhsKF3JJVlhaLWFOQnZpbXZPTVA0N2lNZ1FNcAEoASIVAACBmRY1BjeCiUQewJGTrQ3DuHRp",
      "routeLabels": [
        "DEFAULT_ROUTE"
      ]
    },
    {
      "distanceMeters": 112610,
      "duration": "7165s",
      "routeToken": "CqgCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdySVZYWjZHR0RiTzV2T01QOUpiQXlBTRAFGk8KTQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhIIABADEAYQExASGAJCBBoCCAUiGwoXcklWWFo3S09Cck81dk9NUDlKYkF5QU1wASgCIhUAAIGZFlj_CmMgGE6KGZcsE-tEywM",
      "routeLabels": [
        "SHORTER_DISTANCE"
      ]
    }
  ]
}

Yêu cầu mẫu: Tuyến đường ngắn hơn và tiết kiệm nhiên liệu

Mã sau đây cho thấy một yêu cầu cho cả tuyến đường có quãng đường ngắn hơn và tuyến đường tiết kiệm nhiên liệu.

`

 curl -X POST -d '{
"origin": {  "location": {  "latLng": {  "latitude": 41.76904801292959,
"longitude": -72.67374935684933  }  }  },  "destination": {  "location": {
"latLng": {  "latitude": 41.823042361105024,  "longitude": -71.40933143059424  }
 }  },  "travelMode":"DRIVE",  "routingPreference":"TRAFFIC_AWARE_OPTIMAL",
"requestedReferenceRoutes": ["SHORTER_DISTANCE", "FUEL_EFFICIENT"] }' 
-H 'Content-Type: application/json'
-H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken'
'https://routes.googleapis.com/directions/v2:computeRoutes'

Câu trả lời mẫu: Quãng đường ngắn hơn và Tuyến đường tiết kiệm nhiên liệu

Trong trường hợp này, quãng đường ngắn hơn và tuyến đường tiết kiệm nhiên liệu nhất là giống nhau, vì vậy, tuyến đường đó sẽ được trả về và routeLabel được đưa vào cả hai loại tuyến đường.

{  "routes": [  {  "distanceMeters": 138943,  "duration": "5375s",
"routeToken":
"Cr8CCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXS1laWFo4T19JcWVCM2ZFUDFMbms4UXcQBRpTClEKGAoNCgIIAREAAAAAAIBmQBFOYhBYGTy4QBIWCAAQAxAGEBMQEhgCQgQaAggFSgIIASIbChdLWVpYWjlpV0g2ZUIzZkVQMUxuazhRd3ABKAEiFQAAgZkW4Df4cspNNJZWlMZuUUxLPQ",
 "routeLabels": [  "DEFAULT_ROUTE"  ]  },  {  "distanceMeters": 112610,
"duration": "7156s",  "routeToken":
"CqwCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdLWVpYWi1UNklfT055OVlQczhhcWlRSRAFGlMKUQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhYIABADEAYQExASGAJCBBoCCAVKAggBIhsKF0tZWlhaNERXSF9PTnk5WVBzOGFxaVFJcAEoAiIVAACBmRaESp2EJS5nmwiEF8KH15_f",
 "routeLabels": [  "FUEL_EFFICIENT",  "SHORTER_DISTANCE"  ]  }  ] }

Khu vực được hỗ trợ

Các tuyến đường có quãng đường ngắn hơn được hỗ trợ ở tất cả các khu vực.

Thanh toán

Nền tảng Google Maps không tính thêm phí khi bạn sử dụng tính năng thử nghiệm. Bạn sẽ bị tính phí dựa trên mức sử dụng API dựa trên các thông số khác mà bạn đặt.

Tìm hiểu thêm về việc thanh toán cho Routes API.