Rota yanıtını incele

Routes API bir rota hesaplarken ara noktaları alır ve yapılandırma parametrelerini dahil eder. Ardından, API bir yanıt döndürüyor default (varsayılan) rotayı ve bir veya daha fazla alternatif rotayı içeren URL'yi seçin.

Yanıtınız, koşullara bağlı olarak farklı türde rotaları ve diğer verileri içerebilir istediğiniz alanlar:

Bunu yanıta eklemek için Bu dokümanları göster
Aracın motor türüne göre yakıt veya enerji açısından en verimli rota. Çevre dostu rotaları yapılandırma
En fazla üç alternatif rota Alternatif rotalar isteme
Rotanın her ayağı ve her adım için tüm rota için çoklu çizgi uzanır. Rota çoklu çizgileri isteme
Tüm geçiş fiyat indirimleri dikkate alınarak hesaplanan tahmini geçiş ücretleri Sürücü veya araç için sunulan kartlar var. Geçiş ücretlerini hesaplama
Dil kodlarına ve ölçüm birimine göre yerelleştirilmiş yanıtlar (İngiliz veya metrik). Yerelleştirilmiş değerler isteme
Gezinme talimatlarını HTML metin dizesi olarak biçimlendirmek için şuraya HTML_FORMATTED_NAVIGATION_INSTRUCTIONS ekleyin: extraComputations. Ekstra Hesaplamalar

Giriş seçeneklerinin tam listesi için Kullanılabilir rota seçenekleri'ne bakın. ve İstek gövdesi.

Yanıtı kullanarak müşterilerinize istediğiniz bilgiyi sağlayabilirsiniz gereksinimlerine uygun rotayı seçmek için gereklidir.

Alan maskeleri hakkında

Rota hesaplamak için bir yöntem çağırdığınızda bir alan belirtmelisiniz maskesi (ör. yanıtta döndürülmesini istediğiniz alanları tanımlar) Hayır varsayılan değer listesidir. Bu listeyi çıkarırsanız yöntemler hatası.

Bu dokümandaki örneklerde, yanıt nesnesinin tamamı kabul hesaba katar. Üretim ortamında yanıtınız yalnızca alan maskesinde açıkça belirttiğiniz alanları dahil edin.

Daha fazla bilgi için İade edilecek bilgileri seçme başlıklı makaleye bakın.

Telif haklarını görüntüleme hakkında

Sonuçları kullanıcılarınıza görüntülerken aşağıdaki telif hakkı bildirimini eklemeniz gerekir:

Powered by Google, ©YEAR Google

Örneğin:

Powered by Google, ©2023 Google

Rotalar, bacaklar ve adımlar hakkında

Routes API'nin döndürdüğü yanıta bakmadan önce bir rotayı oluşturan bileşenleri anlaması gerekir:

Rota, bacak ve basamak.

Yanıtınızda şu rota bileşenlerinin her biri hakkında bilgi bulunabilir:

  • Rota: Kalkış ara noktasından herhangi bir yere kadar tüm seyahatin tamamı ara ara noktaları, hedef ara noktasına Rota, veya daha fazla bacak.

  • Aşak: Rotadaki bir ara noktadan sonraki ara noktaya kadar olan yol yol gösterir. Her bacak, bir veya daha fazla ayrı adımdan oluşur.

    Rotada her bir ara noktadan diğerine giden yol için ayrı bir ayak bulunur. Örneğin, rotada tek bir başlangıç ara noktası ve tek bir kalkış noktası varsa varsa, rota tek bir ayaktan oluşur. Her bir kalkış ve varış noktasından sonra rotaya eklediğiniz ek ara nokta, ara ara nokta olarak adlandırılan API ayrı bir ayak ekler.

    API, geçiş ara noktası için ayak eklemez. Örneğin, Örneğin, bir kalkış noktası, geçiş noktası içeren bir rota bir ara nokta, bir hedef ara noktasının da referans noktasından geçerken başlangıç noktasını hedefe yönlendirir. Daha fazla geçiş referans noktalarıyla ilgili daha fazla bilgi için Bir geçiş ara noktası tanımlayın.

  • Adım: Bir rotanın ayağı üzerinde tek bir talimat. Bir adım rotanın atom birimi. Örneğin, bir adım "Ana Menüde sola dön Cadde''.

Yanıtın içeriği

JSON nesnesi aşağıdaki üst düzey özellikleri içerir:

  • routes, tür elemanlardan oluşan bir dizi Rota. routes dizisi, API tarafından döndürülen her rota için bir öğe içerir. Dizide en fazla beş öğe bulunabilir: varsayılan rota, çevre dostu rota ile üç tane alternatif rota sunuyor.

  • geocodingResults, tür elemanlardan oluşan bir dizi GeocodingResults. İstekteki her konum (kaynak, hedef veya ara) için adres dizesi veya Artı kodu olarak belirttiğiniz ara nokta) API bir yer kimliği araması yapar. Bu dizinin her öğesi bir konuma karşılık gelen yer kodunu kullanın. İstekte belirtilen konumlar yer kimliği veya enlem/boylam koordinatları gibi bilgiler dahil edilmez. Tüm konumları yer kimlikleri veya enlem ve boylam kullanarak belirttiyseniz koordinatları, bu dizi sağlanmaz.

  • fallbackInfo, tür FallbackInfo. API, tüm giriş özelliklerinden rota hesaplayamıyorsa farklı bir hesaplama yöntemi kullanmaya devam edebilir. Yedek olduğunda modu kullanılırsa bu alanda yedek hakkında ayrıntılı bilgiler yer alır. tıklayın. Aksi takdirde bu alan ayarlanmaz.

Yanıt şu biçimdedir:

{
  // The routes array.
  "routes": [
    {
      object (Route)
    }
  ],
  // The place ID lookup results.
  "geocodingResults": [
    {
      object (GeocodedWaypoint)
    }
  ],
  // The fallback property.
  "fallbackInfo": {
    object (FallbackInfo)
  }
}

Rotalar dizisini çözme

Yanıt, her dizi öğesi türünde olan routes dizisini içerir Rota. Her dizi öğesi, başlangıç noktasından hedefe kadar tüm rotayı temsil eder. İlgili içeriği oluşturmak için kullanılan API her zaman, varsayılan rota adı verilen en az bir rota döndürür.

Ek rotalar isteyebilirsiniz. Bir çevre dostu rota içeriyorsa dizi iki öğe içerebilir: varsayılan rotayı ve çevre dostu rotayı seçebilirsiniz. Alternatif olarak computeAlternativeRoutes öğesini şuna ayarlayın: Yanıta üç alternatif rota ekleme isteğinde true.

Dizideki her rota, routeLabels dizi özelliğiyle tanımlanır:

Değer Açıklama
DEFAULT_ROUTE Varsayılan rotayı tanımlar.
FUEL_EFFICIENT Çevre dostu rotayı tanımlar.
DEFAULT_ROUTE_ALTERNATE Alternatif bir rota belirtir.

legs dizisi, rotanın her ayağının tanımını içerir. Kalan distanceMeters, duration ve polyline, gibi özellikler rotanın bütünüyle ilgili bilgiler:

{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "routeLabels": [string],
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  }
  "routeToken": string
}

Mevcut sürüş koşulları ve diğer faktörler nedeniyle, varsayılan rota ve çevre dostu rota aynı olabilir. Bu örnekte, routeLabels dizisi şu iki etiketi de içeriyor: DEFAULT_ROUTE ve FUEL_EFFICIENT.

{
  "routes": [
    {
      "routeLabels": [
        "DEFAULT_ROUTE",
        "FUEL_EFFICIENT"
      ],
     …
    }
  ]
}

Bacak dizisini anlama

Yanıttaki her route, bir legs dizisi içerir. Burada her legs dizisi öğe türü RouteLeg'i seçin. Dizideki her ayak, bir referans noktasından diğer ara noktaya kadar olan yolu tanımlar ilerler. Rota her zaman en az bir ayak içerir.

legs özelliği, steps dizisi. Kalan özellikler (ör. distanceMeters, duration, ve polyline bacakla ilgili bilgiler içeriyor.

{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}

Adım dizisini anlama

Yanıttaki her bacak bir steps dizisi içerir. Burada her steps dizisi öğe türü RouteLegStep: Bir adım, bacak üzerinde tek bir talimata karşılık gelir. Bir bacakta her zaman en az bir adım olmalıdır.

steps dizisindeki her öğe, navigationInstruction değerini içerir özellik, tür NavigationInstruction, içerir. Örneğin:

"navigationInstruction": {
  "maneuver": "TURN_LEFT",
  "instructions": "Turn left toward Frontage Rd"
}

instructions, adımla ilgili ek bilgiler içeriyor olabilir. Örneğin:

"navigationInstruction": {
  "maneuver": "TURN_SLIGHT_LEFT",
  "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days"
}

Adımdaki geri kalan özellikler, adımla ilgili bilgileri açıklar. Örneğin, distanceMeters, duration ve polyline olarak:

{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  }
}

Adım talimatlarının dilini belirtin

API, rota bilgilerini yerel dilde, kullanıcının okuyabileceği bir komut dosyası (ör. kullanıcı tarafından dili'ne dokunun. Adres bileşenlerinin tümü aynı dilde döndürülür.

  • Şu parametrenin languageCode parametresini kullan: şu kişiye istekte bulunun: rota dilini açıkça desteklenenler listesinden ayarla diller hakkında daha fazla bilgi edinin. Google genellikle desteklenen bu nedenle bu listede olası her örneğe yer verilmemiş olabilir.

  • Bir ad, belirtilen dilde sunulmuyorsa API en yakın eşleşmedir.

  • Belirtilen dil, reklamverenin API, döndürülmeyi ve döndürülme sırasını seçer. İlgili içeriği oluşturmak için kullanılan coğrafi kod, kısaltmaları dile bağlı olarak farklı şekillerde yorumlar, sokak türlerinin kısaltmaları veya sokaklarda geçerli olabilecek eş anlamlı kelimeler başka bir dilde değil. Örneğin, utca ve tér, İngilizcede kullanılan Macarca sokak.

geocodingResults dizisini anlama

İstekteki her konum (kaynak, hedef veya ara) için adres dizesi veya Artı kodu olarak belirtilen bir ara nokta) API, karşılık gelen bir yere sahip en alakalı konumu bulmaya çalışır Kimlik. Her bir öğe geocodingResults dizi placeID alanını içerir bir yer kimliği olarak konumu ve konumu belirten bir type alanı içerir street_address, premise veya airport gibi bir tür seçin.

geocodingResults dizisi üç alan içerir:

  • origin: Bir adres dizesi veya Plus code olarak belirtilmişse kökenin yer kimliğini girin. Aksi takdirde, bu alan yanıta dahil edilmez.

  • destination: Adres dizesi veya Plus code olarak belirtilmişse hedefin yer kimliğini girin. Aksi takdirde, bu alan tıklayın.

  • intermediates: Herhangi bir ara öğenin yer kimliğini içeren dizi bir adres dizesi veya Plus code olarak belirtilen ara noktaları içerir. Örneğin yer kimliği veya enlemi kullanan bir ara referans noktası boylam koordinatları, yanıttan çıkarılır. Şunu kullanın: intermediateWaypointRequestIndex özelliğini kullanarak istekteki yer kimliğine karşılık gelen ara nokta yanıt verelim.

ziyaret edin.
"geocodingResults": {
    "origin": {
        "geocoderStatus": {},
        "type": [
             enum (Type)
        ],
        "placeId": string
    },
    "destination": {
        "geocoderStatus": {},
        "type": [
            enum (Type)
        ],
        "placeId": string
    },
    "intermediates": [
        {
            "geocoderStatus": {},
            "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        },
        {
           "geocoderStatus": {},
           "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        }
    ]
}

Yerelleştirilmiş yanıt değerlerini anlama

Yerelleştirilmiş yanıt değerleri, döndürülen parametre değerleri için yerelleştirilmiş metin. Yerelleştirilmiş metin şunun için sağlanmıştır: seyahat süresi, mesafe ve birim sistem (metrik veya İngiliz ölçü birimi) Talebiniz yerelleştirilmiş değerleri alan maskesi kullanarak değiştirebilir ve dili ve dili veya API'nin tahmin ettiği değerleri kullanabilirsiniz. Ayrıntılar için bkz. LocalizedValues.

Örneğin, Almanca (de) ve İngiliz ölçü birimi için bir dil kodu belirtirseniz için 49889,7 distanceMeters bir değer elde edersiniz. mesafe ölçümünü sağlayan Almanca ve yerelleştirilmiş metinlerin yanı sıra İngiliz ölçü birimleri, yani "31 Meile".

Yerelleştirilmiş değerler için göreceğiniz bir örneği aşağıda bulabilirsiniz:

{ "localized_values":
  {
    "distance": { "text": "31,0 Meile/n" },
    "duration": { "text": 38 Minuten}.
    "static_duration": { "text": 36 Minuten}.
  }
}
.

Dili veya birim sistemini belirtmezseniz API, dili tahmin eder ve birimlere göre aşağıdaki şekilde oluşturulur:

  • ComputeRoutes yöntemi, konumu ve mesafeyi tahmin eder birim sayısını temel alır. ABD'deki bir yönlendirme isteği için API, en-US dil ve IMPERIAL birim çıkar.
  • ComputeRouteMatrix yöntemi varsayılan olarak "en-US" olur dil ve METRIC birimleri için geçerlidir.