Method: computeRoutes

Trả về tuyến đường chính giữa điểm khởi hành và điểm đến được yêu cầu cho phương thức di chuyển được yêu cầu.

Yêu cầu HTTP

POST https://mapstools.googleapis.com/v1alpha:computeRoutes

URL sử dụng cú pháp Chuyển mã gRPC.

Nội dung yêu cầu

Nội dung yêu cầu chứa dữ liệu với cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode),
  "intermediateWaypoints": [
    {
      object (Waypoint)
    }
  ],
  "routingPreference": enum (RoutingPreference),
  "locationBias": {
    object (LatLng)
  },
  "includePolyline": boolean,
  "computeAlternativeRoutes": boolean,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "departureTime": string,
  "arrivalTime": string
  // End of mutually exclusive fields.
}
Trường
origin

object (Waypoint)

Bắt buộc. Điểm tham chiếu gốc.

destination

object (Waypoint)

Bắt buộc. Điểm tham chiếu của điểm đến.

travelMode

enum (RouteTravelMode)

Không bắt buộc. Chỉ định phương thức di chuyển.

intermediateWaypoints[]

object (Waypoint)

Không bắt buộc. Các điểm dừng trung gian giữa điểm xuất phát và điểm đến cần đi qua theo thứ tự. Hỗ trợ tối đa 25 điểm tham chiếu trung gian.

Việc chỉ định hơn 10 điểm tham chiếu trung gian sẽ làm tăng chi phí và độ trễ. Không hỗ trợ điểm tham chiếu trung gian khi travelMode là TRANSIT.

routingPreference

enum (RoutingPreference)

Không bắt buộc. Xác định cách sử dụng dữ liệu lưu lượng truy cập để tính toán tuyến đường. ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL không được hỗ trợ khi travelMode là WALK hoặc BICYCLE. Đối với TRANSIT, tính năng này cho phép dữ liệu về phương tiện công cộng theo thời gian thực, chẳng hạn như tình trạng chậm trễ và huỷ chuyến.

locationBias

object (LatLng)

Không bắt buộc. Một vị trí để ưu tiên kết quả tìm kiếm, chẳng hạn như để phân biệt các cụm từ tìm kiếm dạng văn bản về điểm tham chiếu.

includePolyline

boolean

Không bắt buộc. Có đưa hình nhiều đường được mã hoá vào các tuyến đường trong phản hồi hay không. Giá trị mặc định là false. Khi được đặt thành true, Route.encoded_polyline sẽ được trả về.

computeAlternativeRoutes

boolean

Không bắt buộc. Có tính toán các tuyến đường thay thế ngoài tuyến đường được đề xuất hay không. Giá trị mặc định là false, trong trường hợp đó, chỉ tuyến đường được đề xuất mới được trả về. Khi được đặt thành true, tối đa tất cả các tuyến đường có sẵn sẽ được trả về, mặc dù các tuyến đường thay thế có thể không có sẵn cho mọi yêu cầu.

Chỉ định thời điểm khởi hành từ điểm xuất phát hoặc đến điểm tham chiếu cuối cùng. Mặc định là khởi hành vào thời điểm hiện tại nếu không được chỉ định. Đối với TRANSIT, thời gian phải cách hiện tại tối đa 7 ngày về trước và tối đa 100 ngày về sau. Đối với các phương thức di chuyển khác, thời gian không được là thời gian trong quá khứ và tối đa là 365 ngày trong tương lai. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi:
departureTime

string (Timestamp format)

Không bắt buộc. Cho biết rằng tuyến đường phải được tính toán dựa trên thời gian khởi hành.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

arrivalTime

string (Timestamp format)

Không bắt buộc. Cho biết tuyến đường phải được tính toán dựa trên thời gian đến.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

Kết thúc các trường loại trừ lẫn nhau.

Nội dung phản hồi

Nếu thành công, nội dung phản hồi sẽ chứa một thực thể của ComputeRoutesResponse.

Phạm vi uỷ quyền

Yêu cầu phạm vi OAuth sau:

  • https://www.googleapis.com/auth/maps-platform.mapstools