Method: computeRouteMatrix

Kalkış ve varış noktalarının listesini alır ve her kalkış ve hedef kombinasyonu için rota bilgilerini içeren bir akış döndürür.

NOT: Bu yöntem, girişte bir yanıt alanı maskesi belirtmenizi gerektirir. Yanıt alanı maskesini $fields veya fields URL parametresini ya da X-Goog-FieldMask HTTP/gRPC üst bilgisini kullanarak sağlayabilirsiniz (kullanılabilir URL parametreleri ve üst bilgileri bölümüne bakın). Değer, virgülle ayrılmış alan yolları listesidir. Alan yollarının nasıl oluşturulacağı hakkında ayrıntılı dokümanları inceleyin.

Örneğin, bu yöntemde:

  • Mevcut tüm alanların alan maskesi (manuel inceleme için): X-Goog-FieldMask: *
  • Rota süreleri, mesafeler, öğe durumu, koşul ve öğe dizinlerinin alan maskesi (örnek üretim kurulumu): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Aksi takdirde tüm mesajlar OK olarak görüneceğinden, alan maskenize status eklemeniz önemlidir. Google, aşağıdaki nedenlerle joker karakter (*) yanıt alanı maskesinin kullanılmasını önermez:

  • Yalnızca ihtiyacınız olan alanları seçmeniz, sunucumuzun hesaplama döngülerini kaydetmesine yardımcı olarak sonucu size daha düşük bir gecikmeyle döndürmemizi sağlar.
  • Üretim işinizde yalnızca ihtiyacınız olan alanları seçmek, kararlı bir gecikme performansı sağlar. Gelecekte daha fazla yanıt alanı ekleyebiliriz ve bu yeni alanlar daha fazla hesaplama süresi gerektirebilir. Tüm alanları seçerseniz veya en üst düzeydeki tüm alanları seçerseniz, eklediğimiz yeni alanlar yanıta otomatik olarak dahil edileceğinden performansta düşüşle karşılaşabilirsiniz.
  • Yalnızca ihtiyacınız olan alanları seçtiğinizde yanıt boyutu küçülür ve böylece daha yüksek ağ işleme hızı elde edilir.

HTTP isteği

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

URL, gRPC Kod Dönüştürme söz dizimini kullanır.

İstek içeriği

İstek gövdesi aşağıdaki yapıya sahip verileri içerir:

JSON gösterimi
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
Alanlar
origins[]

object (RouteMatrixOrigin)

Zorunlu. Yanıt matrisinin satırlarını belirleyen kaynaklar dizisi. Kaynakların ve hedeflerin kardinalitesi için çeşitli boyut kısıtlamaları uygulanır:

  • Öğe sayısı (başlangıç noktaları × varış noktaları) hiçbir durumda 625'ten fazla olmamalıdır.
  • YönlendirmeTercihi, TRAFFIC_AWARE_OPTIMAL olarak ayarlanırsa öğe sayısı (kaynaklar × hedefler) 100'den fazla olmamalıdır.
  • placeId olarak belirtilen ara nokta sayısı (başlangıç noktaları + hedefler) en fazla 50 olmalıdır.
destinations[]

object (RouteMatrixDestination)

Zorunlu. Yanıt matrisinin sütunlarını belirleyen hedefler dizisi.

travelMode

enum (RouteTravelMode)

İsteğe bağlı. Ulaşım şeklini belirtir.

routingPreference

enum (RoutingPreference)

İsteğe bağlı. Rotanın nasıl hesaplanacağını belirtir. Sunucu, yolu hesaplamak için seçilen yönlendirme tercihini kullanmaya çalışır. Yönlendirme tercihi hatayla veya ekstra uzun gecikmeyle sonuçlanırsa bir hata döndürülür. Bu seçeneği yalnızca travelMode DRIVE veya TWO_WHEELER olduğunda belirtebilirsiniz. Aksi takdirde istek başarısız olur.

departureTime

string (Timestamp format)

İsteğe bağlı. Kalkış saati. Bu değeri ayarlamazsanız varsayılan olarak isteği gönderdiğiniz zaman olur. Bu değeri geçmişte gerçekleşmiş bir zamana ayarlarsanız istek başarısız olur.

RFC3339 UTC "Zulu" biçiminde, nanosaniye çözünürlüğüne ve en fazla dokuz kesirli basamağa sahip bir zaman damgası. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

Yanıt gövdesi

Başarılı olursa yanıt gövdesi, RouteMatrixElement örneklerinden oluşan bir akış içerir.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamını gerektirir:

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

Daha fazla bilgi için OAuth 2.0'a Genel Bakış başlıklı makaleyi inceleyin.