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, alan yollarının virgülle ayrılmış bir listesidir. Alan yollarının nasıl oluşturulacağı ile ilgili bu ayrıntılı dokümanlara bakın.

Ö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, durum ve öğe dizinlerinin alan maskesi (örnek üretim kurulumu): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Alan maskenize status eklemeniz çok önemlidir, aksi takdirde tüm iletilerde sorun yoktur. 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ı veya üst düzeydeki tüm alanları seçerseniz ekleyeceğimiz yeni alanlar yanıta otomatik olarak dahil edileceğinden performansta düşüş yaşayabilirsiniz.
  • Yalnızca ihtiyacınız olan alanları seçmek, yanıt boyutunun küçülmesine ve dolayısıyla ağ aktarım hızının artmasına neden olur.

HTTP isteği

POST https://routespreferred.googleapis.com/v1: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 kaynak 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.
  • routingPreference TRAFFIC_AWARE_OPTIMAL olarak ayarlanmışsa öğe sayısı (başlangıçlar × hedefler) en fazla 100 olmalıdır.
  • placeId olarak belirtilen ara noktaların (kaynaklar + hedefler) sayısı 50'den büyük olmamalı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, rotayı hesaplamak için seçilen yönlendirme tercihini kullanmaya çalışır. Yönlendirme tercihi bir hatayla veya aşırı uzun bir gecikmeye neden olursa 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 yaptığınız zaman kullanılır. 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 metni, RouteMatrixElement örnekleri 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.