Beim Berechnen einer Route durch die Routes API werden Wegpunkte und Konfigurationsparameter, die Sie als Eingabe angeben. Die API gibt dann eine Antwort , die die default-Route und eine oder mehrere alternative Routen enthält.
Ihre Antwort kann verschiedene Arten von Routen und andere Daten enthalten, je nachdem, Felder, die Sie anfordern:
Um dies in die Antwort aufzunehmen | Siehe diese Dokumentation |
---|---|
Die sprit- oder energieeffizienteste Route (basierend auf dem Motortyp des Fahrzeugs). | Energiesparende Routen konfigurieren |
Bis zu drei alternative Routen | Alternative Routen anfordern |
Die Polylinie für die gesamte Route, für jeden Abschnitt einer Route und für jeden Schritt Bein. | Polylinien für Routen anfordern |
Geschätzte Mautgebühren unter Berücksichtigung von eventuellen Rabatten auf Mautgebühren oder Pässe gibt, die für den Fahrer oder Fahrzeug verfügbar sind. | Mautgebühren berechnen |
Lokalisierte Antworten nach Sprachcodes und Maßeinheiten (imperial oder Messwert). | Lokalisierte Werte anfordern |
Um die Navigationsanweisungen als HTML-Textstring zu formatieren, fügen Sie HTML_FORMATTED_NAVIGATION_INSTRUCTIONS zu
extraComputations . |
Zusätzliche Berechnungen |
Eine vollständige Liste der Eingabeoptionen finden Sie unter Verfügbare Routenoptionen. und die Anfragetext:
Mithilfe der Antwort können Sie Ihren Kunden um die richtige Route für ihre Anforderungen auszuwählen.
Feldmasken
Wenn Sie eine Methode zum Berechnen einer Route aufrufen, müssen Sie ein Feld angeben -Maske, die definiert, welche Felder in der Antwort zurückgegeben werden sollen. Es gibt keine Standardliste zurückgegebener Felder. Wenn Sie diese Liste auslassen, geben die Methoden ein Fehler.
Die Beispiele in diesem Dokument zeigen das gesamte Antwortobjekt, Feldmasken berücksichtigt. In einer Produktionsumgebung würde Ihre Antwort enthalten nur die Felder, die Sie in der Feldmaske explizit angeben.
Weitere Informationen finden Sie unter Auswählen, welche Informationen zurückgegeben werden sollen.
Informationen zum Anzeigen von Urheberrechten
Wenn Sie Ihren Nutzern die Ergebnisse anzeigen, müssen Sie die folgenden Urheberrechtshinweise angeben:
Powered by Google, ©YEAR Google
Beispiel:
Powered by Google, ©2023 Google
Routen, Streckenabschnitte und Schritte
Bevor Sie sich die von der Routes API zurückgegebene Antwort ansehen, müssen Sie sollte mit den Komponenten einer Route vertraut sein:
Ihre Antwort kann Informationen zu jeder der folgenden Routenkomponenten enthalten:
Route: Die gesamte Fahrt vom Start-Wegpunkt über beliebige Wegpunkte bis zum Zielwegpunkt. Eine Route besteht aus einem oder mehr legs haben.
Abschnitt: der Pfad von einem Wegpunkt auf einer Route zum nächsten Wegpunkt in Route. Jeder Abschnitt besteht aus einem oder mehreren diskreten Schritten.
Eine Route enthält einen separaten Abschnitt für den Pfad von jedem Wegpunkt zum nächsten. Wenn die Route z. B. einen Ausgangswegpunkt und einen einzigen Zielwegpunkt ist, enthält die Route einen einzelnen Streckenabschnitt. Für jede zusätzlichen Wegpunkt, den Sie hinter dem Ausgangs- und Zielort zur Route hinzufügen, als Zwischenwegpunkt bezeichnet, fügt die API einen separaten Streckenabschnitt hinzu.
Die API fügt keinen Abschnitt für einen Passthrough-Zwischenwegpunkt hinzu. Für Eine Route mit einem Ausgangswegpunkt, einer Durchfahrt Zwischenwegpunkt und ein Zielwegpunkt nur einen Streckenabschnitt von den Startpunkt zum Ziel, während sie den Wegpunkt durchquert. Weitere Informationen Informationen zu Wegpunkten zur Weiterleitung finden Sie unter Legen Sie einen Pass-Through-Wegpunkt fest.
Schritt: eine einzelne Anweisung für einen Streckenabschnitt. Ein Schritt ist die atomare Einheit einer Route. Bei einem Schritt könnte beispielsweise Folgendes angezeigt werden: „Auf Hauptseite nach links abbiegen“ Straße".
Inhalt der Antwort
JSON-Objekt die die API-Antwort darstellt, die folgenden Eigenschaften auf oberster Ebene enthält:
routes
: ein Array von Elementen des Typs Route. Das Arrayroutes
enthält ein Element für jede von der API zurückgegebene Route. Das Array kann maximal fünf Elemente enthalten: Standardroute, und bis zu drei alternative Routen berechnen.geocodingResults
: ein Array von Elementen des Typs GeocodingResults Für jeden Standort in der Anfrage (Ursprung, Ziel oder Zwischenort Wegpunkt), den Sie als Adressstring oder als Plus Code angegeben haben, die API eine Orts-ID-Suche durchführt. Jedes Element dieses Arrays enthält den Wert Orts-ID, die einem Standort entspricht. Standorte, die in der Anfrage angegeben sind als Eine Orts-ID oder Breitengrad/Längengrad-Koordinaten sind nicht enthalten. Wenn Sie alle Standorte mithilfe von Orts-IDs oder Breiten- und Längengraden angegeben haben Koordinaten, wird dieses Array nicht bereitgestellt.fallbackInfo
vom Typ FallbackInfo. Wenn die API nicht in der Lage ist, eine Route aus allen Eingabeattributen zu berechnen, kann ein Fallback auf eine andere Berechnungsmethode sein. Bei Fallback Modus verwendet wird, enthält dieses Feld detaillierte Informationen zum Fallback Antwort. Andernfalls ist dieses Feld nicht festgelegt.
Die Antwort hat folgende Form:
{ // The routes array. "routes": [ { object (Route) } ], // The place ID lookup results. "geocodingResults": [ { object (GeocodedWaypoint) } ], // The fallback property. "fallbackInfo": { object (FallbackInfo) } }
Routen-Array entschlüsseln
Die Antwort enthält das Array routes
, wobei jedes Arrayelement vom Typ ist.
Route.
Jedes Array-Element stellt eine gesamte Route vom Start- zum Zielort dar. Die
Die API gibt immer mindestens eine Route zurück. Diese wird als Standardroute bezeichnet.
Sie können zusätzliche Routen anfordern. Wenn Sie eine
umweltfreundliche Route festgelegt haben, kann das Array zwei Elemente enthalten: den
und die spritsparende Route. Oder setze computeAlternativeRoutes
auf
true
in die Anfrage ein, um der Antwort bis zu drei alternative Routen hinzuzufügen.
Jede Route im Array wird durch das Arrayattribut routeLabels
identifiziert:
Wert | Beschreibung |
---|---|
DEFAULT_ROUTE |
Kennzeichnet die Standardroute. |
FUEL_EFFICIENT |
Kennzeichnet die spritsparende Route. |
DEFAULT_ROUTE_ALTERNATE |
gibt eine alternative Route an. |
Das Array legs
enthält die Definition jedes Abschnitts der Route. Die verbleibenden
wie distanceMeters
, duration
und polyline,
enthalten
Informationen zur Route als Ganzes:
{ "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 }
Aufgrund der aktuellen Fahrbedingungen und anderer Faktoren werden die Standardroute und
die spritsparende Route gleich sein kann. In diesem Fall ist das routeLabels
-Array.
enthält beide Labels: DEFAULT_ROUTE
und FUEL_EFFICIENT
.
{ "routes": [ { "routeLabels": [ "DEFAULT_ROUTE", "FUEL_EFFICIENT" ], … } ] }
Informationen zum Array „legs“
Jede route
in der Antwort enthält ein legs
-Array, wobei jedes legs
-Array
Element ist vom Typ
RouteLeg
Jeder Abschnitt im Array definiert den Pfad von einem Wegpunkt zum nächsten Wegpunkt.
entlang der Route. Eine Route besteht immer aus mindestens einem Abschnitt.
Das Attribut legs
enthält die Definition der einzelnen Schritte entlang des Abschnitts im
steps
-Array. Die verbleibenden Attribute, z. B. distanceMeters
, duration
,
und polyline
enthalten Informationen zum Streckenabschnitt.
{ "distanceMeters": integer, "duration": string, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "steps": [ { object (RouteLegStep) } ], "travelAdvisory": { object (RouteLegTravelAdvisory) } }
Das Array der Schritte
Jeder Abschnitt der Antwort enthält ein steps
-Array, wobei jedes steps
-Array
Element ist vom Typ
RouteLegStep
Ein Schritt entspricht einer einzelnen Anweisung entlang des Abschnitts. Ein Streckenabschnitt enthält immer
mindestens einen Schritt.
Jedes Element im steps
-Array enthält navigationInstruction
Property des Typs
NavigationInstruction,
der die Schrittanweisung enthält. Beispiel:
"navigationInstruction": { "maneuver": "TURN_LEFT", "instructions": "Turn left toward Frontage Rd" }
instructions
enthält möglicherweise zusätzliche Informationen zu dem Schritt. Beispiel:
"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" }
Die verbleibenden Eigenschaften des Schritts beschreiben Informationen zu dem Schritt, z. B.:
als distanceMeters
, duration
und polyline
:
{ "distanceMeters": integer, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "navigationInstruction": { object (NavigationInstruction) } }
Sprache für die Schrittanleitung angeben
Die API gibt Routeninformationen in der Landessprache zurück, falls notwendig für den Nutzer lesbar, unter Beachtung der bevorzugten Einstellung Sprache. Alle Adresskomponenten werden in derselben Sprache zurückgegeben.
Verwenden Sie den Parameter
languageCode
einer Anfrage an die Routingsprache explizit aus der Liste der unterstützten Sprachen. Google aktualisiert die unterstützten Sprachen sprechen, daher ist diese Liste unter Umständen nicht vollständig.Wenn in der angegebenen Sprache kein Name verfügbar ist, verwendet die API den am genauesten übereinstimmen.
Die angegebene Sprache kann die Ergebnisse beeinflussen, die vom Die API wählt die Rückgabe und die Reihenfolge aus, in der sie zurückgegeben werden. Die Der Geocoder interpretiert Abkürzungen je nach Sprache unterschiedlich, z. B. die Abkürzungen für Straßentypen oder Synonyme, die in einer Sprache, aber nicht in einer anderen. Beispiel: utca und tér sind Synonyme für auf Ungarisch.
Informationen zum Array „GeocodingResults“
Für jeden Standort in der Anfrage (Ursprung, Ziel oder Zwischenort
Wegpunkt), der als Adressstring oder als Plus Code angegeben wurde, hat der
Die API versucht, den relevantesten Standort zu finden, der einen entsprechenden Ort hat
ID. Jedes Element des
geocodingResults
Array enthält das Feld placeID
mit dem Standort als Orts-ID und dem Feld type
, das den Standort angibt
-Typ, z. B. street_address
, premise
oder airport
.
Das Array geocodingResults
enthält drei Felder:
origin
: Wenn es als Adressstring oder als Plus Code angegeben wurde, wird der Orts-ID des Ausgangsorts. Andernfalls wird dieses Feld in der Antwort weggelassen.destination
: Wenn es als Adressstring oder als Plus Code angegeben wurde, Die Orts-ID des Ziels Andernfalls wird dieses Feld im Antwort.intermediates
: ein Array, das die Orts-ID eines beliebigen Zwischenobjekts enthält als Adressstring oder als Plus Code angegeben werden. Wenn Sie mit einer Orts-ID oder einem Breitengrad und Längengradkoordinaten angegeben werden, wird er in der Antwort ausgelassen. Verwenden Sie die MethodeintermediateWaypointRequestIndex
-Attribut in der Antwort, um zu bestimmen, Welcher Wegpunkt in der Anfrage der Orts-ID in auf die Antwort.
"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 } ] }
Informationen zu lokalisierten Antwortwerten
Lokalisierte Antwortwerte sind ein zusätzliches Antwortfeld, lokalisierten Text für zurückgegebene Parameterwerte. Es wird lokalisierter Text bereitgestellt für Fahrtdauer, Strecke und Einheitensystem (metrisch oder imperial). Ihre Anfrage mithilfe einer Feldmaske lokalisierte Werte und kann entweder die Sprache und oder die vom API abgeleiteten Werte verwenden. Weitere Informationen finden Sie unter LocalizedValues
Wenn Sie beispielsweise einen Sprachcode für Deutsch (de) und angloamerikanisches
erhalten Sie für distanceMeters
einen Wert von 49889, 7,
sondern auch lokalisierten Text auf Deutsch und
imperiale Einheiten, also "31 Meile".
Hier ist ein Beispiel für lokalisierte Werte:
{ "localized_values": { "distance": { "text": "31,0 Meile/n" }, "duration": { "text": 38 Minuten}. "static_duration": { "text": 36 Minuten}. } }
Wenn Sie keine Sprache oder kein Einheitensystem angeben, leitet die API die Sprache ab. und Einheiten wie folgt:
- Die Methode
ComputeRoutes
leitet Standort und Entfernung ab Einheiten vom Ausgangswegpunkt entfernt. Für eine Routinganfrage in den USA leitet die Spracheen-US
undIMPERIAL
-Einheiten ab. - Die Methode
ComputeRouteMatrix
ist standardmäßig auf „en-US“ festgelegt. Sprache und METRIC-Einheiten.