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

Nhà phát triển ở Khu vực kinh tế Châu Âu (EEA)

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

Khi bạn yêu cầu một tuyến đường có khoảng cách 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 giờ đến dự kiến.
  • 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.

Định nghĩa và lý do nên sử dụng

Tuyến đường có khoảng cách ngắn hơn sẽ ưu tiên khoảng cách hơn sự thoải mái khi lái xe hoặc tốc độ. Ví dụ: có thể ưu tiên đường nội đô thay vì đường cao tốc, đi đường đất hoặc đi tắt qua 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ó khoảng cách 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 tuyến đường ngắn hơn:
    • routes.routeLabels: Xác định từng tuyến đường là DEFAULT_ROUTE, SHORTER_DISTANCE hoặc DEFAULT_ROUTE_ALTERNATE.
    • routes.routeToken: Mã thông báo tuyến đường mà bạn có thể truyền đến Navigation SDK để truy xuất một tuyến đường tuỳ chỉnh.
  • Đừng thêm bất kỳ Via điểm tham chiếu trung gian nào.
  • Đừng thêm tham số optimizeWaypointOrder.
  • 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 liên kết với cả tuyến đường mặc định và tuyến đường ngắn hơn:
    • routes.distanceMeters: Trả về khoảng cách của tuyến đường.
    • routes.duration: Trả về thời gian di chuyển của tuyến đường.

Để biết thông tin tham khảo, hãy xem ReferenceRoute và RouteLabel.

Ví dụ về yêu cầu: Tuyến đường có khoảng cách ngắn hơn

Đoạn mã sau đây cho thấy yêu cầu về tuyến đường có khoảng cách 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 được liên kết với cả tuyến đường mặc định và tuyến đườ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 về 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"
      ]
    }
  ]
}

Ví dụ về yêu cầu: Tuyến đường ngắn hơn và tiết kiệm nhiên liệu

Mã sau đây cho thấy yêu cầu về cả tuyến đườ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'

Ví dụ về câu trả lời: Khoảng cách ngắn hơn và Tuyến đường tiết kiệm nhiên liệu

Trong trường hợp này, khoảng cách 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 sẽ được đưa vào cho 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ợ

Tuyến đường có khoảng cách ngắn hơn được hỗ trợ ở tất cả các khu vực.

Thanh toán

Google Maps Platform 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 theo 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.