Method: computeRouteMatrix

Lấy danh sách các nguồn gốc và đích đến rồi trả về một luồng chứa thông tin tuyến đường cho mỗi tổ hợp điểm xuất phát và đích đến.

LƯU Ý: Phương thức này yêu cầu bạn chỉ định mặt nạ trường phản hồi trong dữ liệu đầu vào. Bạn có thể cung cấp mặt nạ cho trường (field mask) của phản hồi bằng cách dùng tham số URL $fields hoặc fields, hoặc dùng tiêu đề HTTP/gRPC X-Goog-FieldMask (xem các tiêu đề và tham số URL có sẵn. Giá trị này là một danh sách các đường dẫn trường được phân tách bằng dấu phẩy. Xem tài liệu chi tiết này về cách xây dựng đường dẫn trường.

Ví dụ: trong phương thức này:

  • Mặt nạ trường (field mask) của tất cả các trường có sẵn (để kiểm tra thủ công): X-Goog-FieldMask: *
  • Mặt nạ trường (field mask) của thời lượng tuyến đường, khoảng cách, trạng thái của thành phần, điều kiện và chỉ mục thành phần (ví dụ về cách thiết lập quy trình sản xuất): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Điều quan trọng là bạn phải đưa status vào mặt nạ cho trường (field mask) vì nếu không tất cả thông báo sẽ hiển thị là bình thường. Google không khuyến khích việc sử dụng mặt nạ cho trường phản hồi bằng ký tự đại diện (*) vì:

  • Việc chỉ chọn những trường bạn cần sẽ giúp máy chủ của chúng tôi lưu chu kỳ tính toán, cho phép chúng tôi trả về kết quả cho bạn với độ trễ thấp hơn.
  • Chỉ chọn các trường mà bạn cần trong công việc sản xuất sẽ đảm bảo hiệu suất độ trễ ổn định. Chúng tôi có thể thêm các trường phản hồi khác trong tương lai và các trường mới đó có thể yêu cầu thêm thời gian tính toán. Nếu bạn chọn tất cả các trường hoặc nếu bạn chọn tất cả các trường ở cấp cao nhất, thì bạn có thể thấy hiệu suất giảm vì mọi trường mới mà chúng tôi thêm sẽ tự động được đưa vào phản hồi.
  • Việc chỉ chọn các trường bạn cần sẽ làm giảm kích thước phản hồi, từ đó có thông lượng mạng cao hơn.

Yêu cầu HTTP

POST https://routespreferred.googleapis.com/v1:computeRouteMatrix

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 có cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
Các trường
origins[]

object (RouteMatrixOrigin)

Bắt buộc. Mảng nguồn gốc xác định các hàng của ma trận phản hồi. Một số quy định hạn chế về kích thước áp dụng cho số lượng giá trị riêng biệt của các nguồn gốc và đích đến:

  • Số lượng phần tử (gốc × đích) không được nhiều hơn 625 trong mọi trường hợp.
  • Số phần tử (gốc × đích) không được nhiều hơn 100 nếu4Preference được đặt thành TRAFFIC_AWARE_OPTIMAL.
  • Số điểm tham chiếu (nguồn gốc + đích đến) được chỉ định là placeId không được lớn hơn 50.
destinations[]

object (RouteMatrixDestination)

Bắt buộc. Mảng các đích đến giúp xác định các cột của ma trận phản hồi.

travelMode

enum (RouteTravelMode)

Không bắt buộc. Nêu rõ phương thức di chuyển.

routingPreference

enum (RoutingPreference)

Không bắt buộc. Chỉ định cách tính toán tuyến đường. Máy chủ cố gắng sử dụng tuỳ chọn định tuyến đã chọn để tính toán tuyến đường. Nếu tuỳ chọn định tuyến dẫn đến lỗi hoặc độ trễ thêm lâu, lỗi sẽ được trả về. Trong tương lai, chúng tôi có thể triển khai cơ chế dự phòng để sử dụng một tuỳ chọn khác khi lựa chọn ưu tiên không cung cấp kết quả hợp lệ. Bạn chỉ có thể chỉ định tuỳ chọn này khi travelModeDRIVE hoặc TWO_WHEELER, nếu không yêu cầu không thành công.

departureTime

string (Timestamp format)

Không bắt buộc. Thời gian khởi hành. Nếu bạn không đặt giá trị này thì giá trị mặc định sẽ là thời gian bạn đưa ra yêu cầu. Nếu bạn đặt giá trị này thành một thời điểm đã xảy ra, thì yêu cầu sẽ không thành công.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, với độ phân giải nano giây và tối đa 9 chữ số phân số. Ví dụ: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

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 phiên bản của RouteMatrixElement.

Phạm vi cấp phép

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

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

Để biết thêm thông tin, hãy xem Tổng quan về OAuth 2.0.