Routenantwort prüfen

Entwickler im Europäischen Wirtschaftsraum (EWR)

Wenn die Routes API eine Route berechnet, werden die von Ihnen angegebenen Wegpunkte und Konfigurationsparameter als Eingabe verwendet. Die API gibt dann eine Antwort zurück, die die Standardroute und eine oder mehrere alternative Routen enthält.

Ihre Antwort kann je nach den von Ihnen angeforderten Feldern verschiedene Arten von Routen und anderen Daten enthalten:

So nehmen Sie dies in die Antwort auf Dokumentation ansehen
Die Route mit dem niedrigsten Kraftstoff- oder Energieverbrauch basierend auf dem Motortyp des Fahrzeugs. Umweltfreundliche Routen konfigurieren
Bis zu drei alternative Routen Alternative Routen anfordern
Die Polylinie für eine gesamte Route, für jede Etappe einer Route und für jeden Schritt einer Etappe. Routen-Polylinien anfordern
Die geschätzten Mautgebühren unter Berücksichtigung von Mautpreisrabatten oder Pässen, die dem Fahrer oder Fahrzeug zur Verfügung stehen. Mautgebühren berechnen
Lokalisierte Antworten nach Sprachcodes und Maßeinheit (angelsächsisch/imperial oder metrisch). Lokalisierte Werte anfordern
Wenn Sie die Navigationsanweisungen als HTML-Textstring formatieren möchten, fügen Sie HTML_FORMATTED_NAVIGATION_INSTRUCTIONS zu extraComputations hinzu. Zusätzliche Berechnungen

Eine vollständige Liste der Eingabeoptionen finden Sie unter Verfügbare Routenoptionen und im Anfragetext.

Anhand der Antwort können Sie Ihren Kunden die Informationen zur Verfügung stellen, die sie benötigen, um die für ihre Anforderungen geeignete Route auszuwählen.

Feldmasken

Wenn Sie eine Methode zum Berechnen einer Route aufrufen, müssen Sie eine Feldmaske angeben, die definiert, welche Felder in der Antwort zurückgegeben werden sollen. Es gibt keine Standardliste der zurückgegebenen Felder. Wenn Sie diese Liste weglassen, geben die Methoden einen Fehler zurück.

In den Beispielen in diesem Dokument wird das gesamte Antwortobjekt ohne Berücksichtigung von Feldmasken dargestellt. In einer Produktionsumgebung würde Ihre Antwort nur die Felder enthalten, die Sie explizit in der Feldmaske angeben.

Weitere Informationen finden Sie unter Zurückzugebende Informationen auswählen.

Urheberrechtsvermerke anzeigen

Wenn Sie die Ergebnisse Ihren Nutzern präsentieren, müssen Sie die folgende Urheberrechtserklärung angeben:

Powered by Google, ©YEAR Google

Beispiel:

Powered by Google, ©2023 Google

Routen, Abschnitte und Schritte

Bevor Sie sich die von der Routes API zurückgegebene Antwort ansehen, sollten Sie sich mit den Komponenten einer Route vertraut machen:

Die Route, die Etappe und der Schritt.

Ihre Antwort kann Informationen zu den einzelnen Komponenten der Route enthalten:

  • Route: Die gesamte Fahrt vom Start- über alle Zwischen- bis zum Zielwegpunkt. Eine Route besteht aus einem oder mehreren Abschnitten.

  • Abschnitt: Der Weg von einem Wegpunkt einer Route zum nächsten Wegpunkt der Route. Jeder Abschnitt besteht aus einem oder mehreren einzelnen Schritten.

    Eine Route enthält einen separaten Routenabschnitt für den Weg von jedem Wegpunkt zum nächsten. Wenn die Route beispielsweise einen einzelnen Start- und einen einzelnen Ziel-Waypoint enthält, besteht sie aus einer einzigen Teilstrecke. Für jeden zusätzlichen Wegpunkt, den Sie der Route nach dem Start- und Zielort hinzufügen (Zwischenwegpunkt), fügt die API einen separaten Abschnitt hinzu.

    Die API fügt für einen Pass-Through-Zwischenwegpunkt keinen Abschnitt hinzu. Eine Route mit einem Startwegpunkt, einem Zwischenwegpunkt und einem Zielwegpunkt enthält beispielsweise nur einen Abschnitt vom Start- zum Zielort, der über den Zwischenwegpunkt verläuft. Weitere Informationen zu Durchgangswegpunkten finden Sie unter Durchgangswegpunkt definieren.

  • Schritt: Eine einzelne Anweisung auf einem Routenabschnitt. Ein Schritt ist die kleinste Einheit einer Route. Ein Schritt kann beispielsweise „Biegen Sie links in die Hauptstraße ein“ lauten.

Inhalt der Antwort

Das JSON-Objekt, das die API-Antwort darstellt, enthält die folgenden Eigenschaften der obersten Ebene:

  • routes, ein Array von Elementen vom Typ Route. Das routes-Array enthält ein Element für jede von der API zurückgegebene Route. Das Array kann maximal fünf Elemente enthalten: die Standardroute, die umweltfreundliche Route und bis zu drei alternative Routen.

  • geocodingResults, ein Array von Elementen vom Typ GeocodingResults. Für jeden Ort in der Anfrage (Startpunkt, Ziel oder Zwischenstopp), den Sie als Adressstring oder als Plus Code angegeben haben, führt die API eine Orts-ID-Suche durch. Jedes Element dieses Arrays enthält die Orts-ID, die einem Ort entspricht. Standorte in der Anfrage, die als Orts-ID oder als Breiten-/Längengradkoordinaten angegeben sind, werden nicht berücksichtigt. Wenn Sie alle Standorte mit Orts-IDs oder Breiten- und Längengradkoordinaten angegeben haben, wird dieses Array nicht bereitgestellt.

  • fallbackInfo vom Typ FallbackInfo. Wenn die API keine Route aus allen Eingabe-Properties berechnen kann, wird möglicherweise auf eine andere Berechnungsmethode zurückgegriffen. Wenn der Fallback-Modus verwendet wird, enthält dieses Feld detaillierte Informationen zur Fallback-Antwort. Andernfalls ist dieses Feld nicht festgelegt.

Die Antwort hat das folgende Format:

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

Das Routen-Array entschlüsseln

Die Antwort enthält das routes-Array, wobei jedes Array-Element vom Typ Route ist. Jedes Array-Element steht für eine vollständige Route vom Start- zum Zielort. Die API gibt immer mindestens eine Route zurück, die als Standardroute bezeichnet wird.

Sie können zusätzliche Routen anfordern. Wenn Sie eine verbrauchsarme Route anfordern, kann das Array zwei Elemente enthalten: die Standardroute und die verbrauchsarme Route. Alternativ können Sie im Antrag computeAlternativeRoutes auf true setzen, um der Antwort bis zu drei alternative Routen hinzuzufügen.

Jede Route im Array wird mit der Array-Eigenschaft routeLabels identifiziert:

Wert Beschreibung
DEFAULT_ROUTE Gibt die Standardroute an.
FUEL_EFFICIENT Kennzeichnet die umweltfreundliche Route.
DEFAULT_ROUTE_ALTERNATE I steht für eine alternative Route.

Das legs-Array enthält die Definition der einzelnen Abschnitte der Route. Die verbleibenden Eigenschaften 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 können die Standardroute und die umweltfreundliche Route identisch sein. In diesem Fall enthält das routeLabels-Array beide Labels: DEFAULT_ROUTE und FUEL_EFFICIENT.

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

Das Array „legs“

Jedes route in der Antwort enthält ein legs-Array, wobei jedes legs-Array-Element vom Typ RouteLeg ist. Jeder Abschnitt im Array definiert den Pfad von einem Wegpunkt zum nächsten Wegpunkt auf der Route. Eine Route enthält immer mindestens einen Abschnitt.

Das Attribut legs enthält die Definition der einzelnen Schritte entlang des Abschnitts im Array steps. Die verbleibenden Attribute wie distanceMeters, duration und polyline enthalten Informationen zum Abschnitt.

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

Das Array „steps“

Jeder Abschnitt in der Antwort enthält ein steps-Array, wobei jedes steps-Arrayelement vom Typ RouteLegStep ist. Ein Schritt entspricht einer einzelnen Anweisung auf der Route. Ein Abschnitt enthält immer mindestens einen Schritt.

Jedes Element im steps-Array enthält das Attribut navigationInstruction vom Typ NavigationInstruction, das die Schrittanleitung enthält. Beispiel:

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

Die instructions enthalten möglicherweise zusätzliche Informationen zum 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 Attribute im Schritt beschreiben Informationen zum Schritt, z. B. distanceMeters, duration und polyline:

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

Sprache der Schrittanleitung angeben

Die API gibt Routeninformationen in der lokalen Sprache zurück, die bei Bedarf in ein für den Nutzer lesbares Schriftsystem transliteriert werden. Dabei wird die bevorzugte Sprache berücksichtigt. Alle Adresskomponenten werden in derselben Sprache zurückgegeben.

  • Verwenden Sie den Parameter languageCode einer Anfrage, um die Sprache der Route explizit aus der Liste der unterstützten Sprachen festzulegen. Die unterstützten Sprachen werden regelmäßig von Google aktualisiert. Diese Liste ist daher möglicherweise nicht vollständig.

  • Wenn ein Name in der angegebenen Sprache nicht verfügbar ist, wird der Name verwendet, der am besten passt.

  • Die angegebene Sprache kann sich auf die Ergebnisse auswirken, die von der API zurückgegeben werden, und auf die Reihenfolge, in der sie zurückgegeben werden. Der Geocoder interpretiert Abkürzungen je nach Sprache unterschiedlich, z. B. die Abkürzungen für Straßentypen oder Synonyme, die in einer Sprache gültig sein können, in einer anderen jedoch nicht. Beispiel: „utca“ und „tér“ sind Synonyme für „Straße“ auf Ungarisch.

Das Array „geocodingResults“

Für jeden Ort in der Anfrage (Startpunkt, Ziel oder Zwischenstopp), der als Adressstring oder als Plus Code angegeben wurde, versucht die API, den relevantesten Ort mit einer entsprechenden Orts-ID zu finden. Jedes Element des Arrays geocodingResults enthält das Feld placeID mit dem Ort als Orts-ID und das Feld type mit dem Ortstyp, z. B. street_address, premise oder airport.

Das Array geocodingResults enthält drei Felder:

  • origin: Wenn sie als Adressstring oder als Plus Code angegeben wurde, die Orts-ID des Ursprungs. Andernfalls wird dieses Feld in der Antwort nicht berücksichtigt.

  • destination: Wenn sie als Adressstring oder als Plus Code angegeben wurde, die Orts-ID des Ziels. Andernfalls wird dieses Feld aus der Antwort ausgelassen.

  • intermediates: Ein Array mit der Orts-ID aller Zwischenziele, die als Adressstring oder als Plus Code angegeben wurden. Wenn Sie einen Zwischenstopp mit einer Orts-ID oder mit Breiten- und Längengradkoordinaten angeben, wird er aus der Antwort ausgelassen. Verwenden Sie das Attribut intermediateWaypointRequestIndex in der Antwort, um zu ermitteln, welcher Zwischenstopp in der Anfrage der Orts-ID in der Antwort entspricht.

"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
        }
    ]
}

Lokalisierte Antwortwerte verstehen

Lokalisierte Antwortwerte sind ein zusätzliches Antwortfeld, das lokalisierten Text für zurückgegebene Parameterwerte enthält. Lokalisierter Text wird für die Fahrtdauer, die Entfernung und das Einheitensystem (metrisch oder imperial) bereitgestellt. Sie fordern lokalisierte Werte mit einer Feldmaske an und können entweder die Sprache und das Einheitensystem angeben oder die von der API abgeleiteten Werte verwenden. Weitere Informationen finden Sie unter LocalizedValues.

Wenn Sie beispielsweise einen Sprachcode für Deutsch (de) und imperiale Einheiten angeben, erhalten Sie einen Wert für distanceMeters von 49889,7, aber auch lokalisierten Text, der die Entfernung in Deutsch und in imperialen Einheiten angibt, also „31 Meilen“.

Hier sehen Sie 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 die Sprache oder das Einheitensystem nicht angeben, leitet die API die Sprache und Einheiten so ab:

  • Die Methode ComputeRoutes leitet die Standort- und Entfernungseinheiten vom Ursprungs-Waypoint ab. Bei einer Routinganfrage in den USA leitet die API also die Sprache en-US und die Einheiten IMPERIAL ab.
  • Die ComputeRouteMatrix-Methode verwendet standardmäßig die Sprache „en-US“ und METRISCHE Einheiten.