Method: computeRoutes

Gibt die Hauptroute sowie optionale alternative Routen zurück, wenn eine Reihe von End- und Zwischenpunkten angegeben ist.

HINWEIS:Bei dieser Methode müssen Sie in der Eingabe eine Antwortfeldmaske angeben. Sie können die Antwortfeldmaske mithilfe des URL-Parameters $fields oder fields oder mit dem HTTP/gRPC-Header X-Goog-FieldMask bereitstellen. Weitere Informationen zu verfügbaren URL-Parametern und -Headern Der Wert ist eine durch Kommas getrennte Liste von Feldpfaden. In dieser ausführlichen Dokumentation erfahren Sie, wie Sie Feldpfade erstellen.

Beispiel für diese Methode:

  • Feldmaske aller verfügbaren Felder (für manuelle Prüfung): X-Goog-FieldMask: *
  • Feldmaske für Dauer, Entfernung und Polylinie auf Routenebene (Beispiel für eine Produktionskonfiguration): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google rät von der Verwendung der Antwortfeldmaske mit Platzhalter (*) oder der Angabe der Feldmaske auf oberster Ebene (routes) ab. Das hat folgende Gründe:

  • Wenn Sie nur die benötigten Felder auswählen, kann unser Server Rechenzyklen einsparen. So können wir Ihnen das Ergebnis mit einer geringeren Latenz zurückgeben.
  • Wenn Sie nur die Felder auswählen, die Sie in Ihrem Produktionsjob benötigen, ist die Latenzleistung stabil. Möglicherweise fügen wir in Zukunft weitere Antwortfelder hinzu, und diese neuen Felder erfordern möglicherweise zusätzliche Rechenzeit. Wenn Sie alle Felder oder alle Felder auf oberster Ebene auswählen, kann es zu Leistungseinbußen kommen, da jedes neue Feld, das wir hinzufügen, automatisch in die Antwort aufgenommen wird.
  • Wenn Sie nur die benötigten Felder auswählen, ist die Antwort kleiner und der Netzwerkdurchsatz höher.

HTTP-Anfrage

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

Die URL verwendet die Syntax der gRPC-Transcodierung.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "computeAlternativeRoutes": boolean,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "languageCode": string,
  "units": enum (Units),
  "optimizeWaypointOrder": boolean
}
Felder
origin

object (Waypoint)

Erforderlich. Startpunkt.

destination

object (Waypoint)

Erforderlich. Ziel-Wegpunkt

intermediates[]

object (Waypoint)

Optional. Eine Gruppe von Wegpunkten entlang der Route (mit Ausnahme von Endpunkten), die an einem Zwischenstopp stehen oder an einem vorbeigehen. Es werden bis zu 25 Wegpunkte unterstützt.

travelMode

enum (RouteTravelMode)

Optional. Gibt die Mobilitätsform an.

routingPreference

enum (RoutingPreference)

Optional. Gibt an, wie die Route berechnet wird. Der Server versucht, die Route anhand der ausgewählten Routing-Einstellung zu berechnen. Wenn die Routing-Einstellung zu einem Fehler oder zu einer besonders langen Latenz führt, wird ein Fehler zurückgegeben. Diese Option kann nur angegeben werden, wenn travelMode den Wert DRIVE oder TWO_WHEELER hat. Andernfalls schlägt die Anfrage fehl.

polylineQuality

enum (PolylineQuality)

Optional. Gibt die gewünschte Qualität der Polylinie an.

polylineEncoding

enum (PolylineEncoding)

Optional. Gibt die bevorzugte Codierung für die Polylinie an.

departureTime

string (Timestamp format)

Optional. Die Abfahrtszeit. Wenn Sie diesen Wert nicht festlegen, wird standardmäßig der Zeitpunkt der Anfrage verwendet. Wenn Sie diesen Wert auf eine Zeit festlegen, die bereits verstrichen ist, schlägt die Anfrage fehl.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

computeAlternativeRoutes

boolean

Optional. Gibt an, ob zusätzlich zur Route alternative Routen berechnet werden sollen. Bei Anfragen mit Wegpunkten werden keine alternativen Routen zurückgegeben.

routeModifiers

object (RouteModifiers)

Optional. Eine Reihe von Bedingungen, die erfüllt sein müssen und sich auf die Berechnung von Routen auswirken.

languageCode

string

Optional. Der BCP-47-Sprachcode, z. B. "en-US" oder "sr-Latn" Weitere Informationen finden Sie unter Unicode-Sprachkennzeichnung. Eine Liste der unterstützten Sprachen finden Sie unter Sprachunterstützung. Wenn Sie diesen Wert nicht angeben, wird die Anzeigesprache aus dem Standort der Routenanfrage abgeleitet.

units

enum (Units)

Optional. Gibt die Maßeinheiten für die Anzeigefelder an. Dazu gehört auch das Feld instruction in NavigationInstruction. Die Maßeinheiten für Route, Teilstrecke, Schrittentfernung und Dauer sind von diesem Wert nicht betroffen. Wenn Sie diesen Wert nicht angeben, werden die Anzeigenblöcke aus dem Standort der Anfrage abgeleitet.

optimizeWaypointOrder

boolean

Wenn „optimizeWaypointOrder“ auf „true“ gesetzt ist, wird versucht, die angegebenen Zwischenziele neu anzuordnen, um die Gesamtkosten der Route zu minimieren. Wenn einer der Wegpunkte ein Wegpunkt ist, schlägt die Anfrage fehl. Verwenden Sie ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index, um die neue Reihenfolge zu finden. Wenn routes.optimized_intermediate_waypoint_index nicht im X-Goog-FieldMask-Header angefordert wird, schlägt die Anfrage fehl. Wenn optimizeWaypointOrder auf „false“ gesetzt ist, ist ComputeRoutesResponse.optimized_intermediate_waypoint_index leer.

Antworttext

Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von ComputeRoutesResponse.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

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

Weitere Informationen finden Sie in der OAuth 2.0-Übersicht.