Method: computeRouteMatrix

Akzeptiert eine Liste mit Start- und Zielorten und gibt einen Stream mit Routeninformationen für jede Kombination aus Start- und Zielort zurück.

HINWEIS:Für diese Methode müssen Sie im Input eine Antwortfeldmaske angeben. Sie können die Antwortfeldmaske mit dem URL-Parameter $fields oder fields oder mit dem HTTP-/gRPC-Header X-Goog-FieldMask angeben (siehe verfügbare URL-Parameter und Header). Der Wert ist eine durch Kommas getrennte Liste von Feldpfaden. Ausführliche Informationen zum Erstellen der Feldpfade

Beispiel:

  • Feldmaske aller verfügbaren Felder (zur manuellen Überprüfung): X-Goog-FieldMask: *
  • Feldmaske für Routendauern, ‑entfernungen, Elementstatus, ‑bedingungen und ‑indexe (Beispiel für die Produktionseinrichtung): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Es ist wichtig, dass Sie status in Ihre Feldmaske aufnehmen, da sonst alle Nachrichten als OK angezeigt werden. Google rät von der Verwendung der Platzhalter-Antwortfeldmaske (*) ab, da:

  • Wenn Sie nur die benötigten Felder auswählen, kann unser Server Rechenzyklen sparen und wir können Ihnen das Ergebnis mit einer geringeren Latenz zurückgeben.
  • Wenn Sie nur die Felder auswählen, die Sie für Ihren Produktionsjob benötigen, wird eine stabile Latenzleistung gewährleistet. Möglicherweise fügen wir in Zukunft weitere Antwortfelder hinzu. Diese neuen Felder erfordern möglicherweise zusätzliche Rechenzeit. Wenn Sie alle Felder oder alle Felder auf der obersten 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 Antwortgröße kleiner und der Netzwerkdurchsatz höher.

HTTP-Anfrage

POST https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix

Die URL verwendet die Syntax der gRPC-Transcodierung.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string,
  "arrivalTime": string,
  "languageCode": string,
  "regionCode": string,
  "units": enum (Units),
  "extraComputations": [
    enum (ExtraComputation)
  ],
  "trafficModel": enum (TrafficModel),
  "transitPreferences": {
    object (TransitPreferences)
  }
}
Felder
origins[]

object (RouteMatrixOrigin)

Erforderlich. Array von Ursprüngen, das die Zeilen der Antwortmatrix bestimmt. Für die Kardinalität von Herkunft und Ziel gelten mehrere Größenbeschränkungen:

  • Die Summe der Anzahl der als placeId oder address angegebenen Start- und Zielorte darf nicht größer als 50 sein.
  • Das Produkt aus der Anzahl der Startpunkte und der Anzahl der Zielorte darf in keinem Fall größer als 625 sein.
  • Das Produkt aus der Anzahl der Startpunkte × Anzahl der Zielorte darf nicht größer als 100 sein, wenn „routingPreference“ auf TRAFFIC_AWARE_OPTIMAL festgelegt ist.
  • Das Produkt aus der Anzahl der Startpunkte × Anzahl der Zielorte darf nicht größer als 100 sein, wenn „travelMode“ auf TRANSIT festgelegt ist.
destinations[]

object (RouteMatrixDestination)

Erforderlich. Array von Zielvorhaben, das die Spalten der Antwortmatrix bestimmt.

travelMode

enum (RouteTravelMode)

Optional. Gibt die Mobilitätsform an.

routingPreference

enum (RoutingPreference)

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

departureTime

string (Timestamp format)

Optional. Die Abfahrtszeit. Wenn Sie diesen Wert nicht festlegen, wird standardmäßig die Zeit verwendet, zu der Sie die Anfrage gestellt haben. HINWEIS: Sie können nur ein departureTime in der Vergangenheit angeben, wenn RouteTravelMode auf TRANSIT festgelegt ist.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

arrivalTime

string (Timestamp format)

Optional. Die Ankunftszeit. HINWEIS: Kann nur festgelegt werden, wenn RouteTravelMode auf TRANSIT gesetzt ist. Sie können entweder departureTime oder arrivalTime angeben, aber nicht beides.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

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 des ersten Ursprungs abgeleitet.

regionCode

string

Optional. Der Regionscode, angegeben als zweistelliger Ländercode der Top-Level-Domain (ccTLD). Weitere Informationen finden Sie unter Ländercode-Top-Level-Domains.

units

enum (Units)

Optional. Gibt die Maßeinheiten für die Anzeigefelder an.

extraComputations[]

enum (ExtraComputation)

Optional. Eine Liste zusätzlicher Berechnungen, die zum Ausführen der Anfrage verwendet werden können. Hinweis: Durch diese zusätzlichen Berechnungen können zusätzliche Felder in der Antwort zurückgegeben werden. Diese zusätzlichen Felder müssen auch in der Feldmaske angegeben werden, damit sie in der Antwort zurückgegeben werden.

trafficModel

enum (TrafficModel)

Optional. Gibt die Annahmen an, die bei der Berechnung der Reisezeit verwendet werden sollen. Diese Einstellung wirkt sich auf den Wert für die voraussichtliche Reisezeit aus, der in der Antwort im Feld „duration“ zurückgegeben und anhand bisheriger Durchschnittswerte berechnet wird.RouteMatrixElement TrafficModel ist nur für Anfragen verfügbar, bei denen RoutingPreference auf TRAFFIC_AWARE_OPTIMAL und RouteTravelMode auf DRIVE festgelegt ist. Der Standardwert ist BEST_GUESS, wenn Verkehrsdaten angefordert werden und TrafficModel nicht angegeben ist.

transitPreferences

object (TransitPreferences)

Optional. Gibt Einstellungen an, die die für TRANSIT-Routen zurückgegebene Route beeinflussen. HINWEIS: Sie können nur dann einen transitPreferences angeben, wenn RouteTravelMode auf TRANSIT festgelegt ist.

Antworttext

Enthält Routeninformationen, die für ein Start- und Zielortpaar in der v2.computeRouteMatrix API berechnet wurden. Dieses Proto kann an den Client gestreamt werden.

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

JSON-Darstellung
{
  "status": {
    object (Status)
  },
  "condition": enum (RouteMatrixElementCondition),
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "localizedValues": {
    object (LocalizedValues)
  },
  "originIndex": integer,
  "destinationIndex": integer
}
Felder
status

object (Status)

Fehlerstatuscode für dieses Element.

condition

enum (RouteMatrixElementCondition)

Gibt an, ob die Route gefunden wurde. Unabhängig vom Status.

distanceMeters

integer

Die zurückzulegende Strecke der Route in Metern.

duration

string (Duration format)

Die Zeit, die für die Navigation der Route benötigt wird. Wenn Sie routingPreference auf TRAFFIC_UNAWARE festlegen, entspricht dieser Wert staticDuration. Wenn Sie routingPreference auf TRAFFIC_AWARE oder TRAFFIC_AWARE_OPTIMAL festlegen, wird dieser Wert unter Berücksichtigung der Verkehrsbedingungen berechnet.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

staticDuration

string (Duration format)

Die Dauer der Fahrt auf der Route ohne Berücksichtigung der Verkehrslage.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

travelAdvisory

object (RouteTravelAdvisory)

Zusätzliche Informationen zur Route. Beispiele: Informationen zu Einschränkungen und Maut

fallbackInfo

object (FallbackInfo)

In einigen Fällen, in denen der Server die Route mit den angegebenen Einstellungen für dieses bestimmte Start-/Zielpaar nicht berechnen kann, wird möglicherweise auf einen anderen Berechnungsmodus zurückgegriffen. Wenn der Fallback-Modus verwendet wird, enthält dieses Feld detaillierte Informationen zur Fallback-Antwort. Andernfalls ist dieses Feld nicht festgelegt.

localizedValues

object (LocalizedValues)

Textdarstellungen von Attributen der RouteMatrixElement.

originIndex

integer

Nullbasierter Index des Ursprungs in der Anfrage.

destinationIndex

integer

Nullbasierter Index des Ziels in der Anfrage.

RouteMatrixOrigin

Ein einzelner Ursprung für ComputeRouteMatrixRequest

JSON-Darstellung
{
  "waypoint": {
    object (Waypoint)
  },
  "routeModifiers": {
    object (RouteModifiers)
  }
}
Felder
waypoint

object (Waypoint)

Erforderlich. Ausgangspunkt

routeModifiers

object (RouteModifiers)

Optional. Modifikatoren für jede Route, die diesen Ort als Ausgangspunkt verwendet

RouteMatrixDestination

Ein einzelnes Ziel für ComputeRouteMatrixRequest

JSON-Darstellung
{
  "waypoint": {
    object (Waypoint)
  }
}
Felder
waypoint

object (Waypoint)

Erforderlich. Ziel-Wegpunkt

ExtraComputation

Zusätzliche Berechnungen, die beim Ausführen der Anfrage durchgeführt werden sollen.

Enums
EXTRA_COMPUTATION_UNSPECIFIED Nicht verwendet. Anfragen mit diesem Wert schlagen fehl.
TOLLS Mautinformationen für das/die Matrixelement(e).

RouteMatrixElementCondition

Der Zustand der zurückgegebenen Route.

Enums
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED Wird nur verwendet, wenn der status des Elements nicht in Ordnung ist.
ROUTE_EXISTS Es wurde eine Route gefunden und die entsprechenden Informationen wurden für das Element ausgefüllt.
ROUTE_NOT_FOUND Es konnte keine Route gefunden werden. Felder mit Routeninformationen wie distanceMeters oder duration werden im Element nicht ausgefüllt.

LocalizedValues

Textdarstellungen bestimmter Properties.

JSON-Darstellung
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  },
  "transitFare": {
    object (LocalizedText)
  }
}
Felder
distance

object (LocalizedText)

Die zurückgelegte Entfernung in Textform.

duration

object (LocalizedText)

Dauer in Textform unter Berücksichtigung der Verkehrslage. Hinweis: Wenn keine Verkehrsinformationen angefordert wurden, entspricht dieser Wert dem Wert von „staticDuration“.

staticDuration

object (LocalizedText)

Dauer in Textform, ohne Berücksichtigung der Verkehrsbedingungen.

transitFare

object (LocalizedText)

Der Fahrpreis für öffentliche Verkehrsmittel wird in Textform dargestellt.