Problembehebung

Fehler

Im Falle eines Fehlers wird ein Fehlerantworttext im Standardformat zurückgegeben und der HTTP-Statuscode wird auf einen Fehlerstatus gesetzt.

Die Antwort enthält ein Objekt mit einem einzelnen error-Objekt und den folgenden Schlüsseln:

  • code: entspricht dem HTTP-Status der Antwort.
  • message: Eine kurze Beschreibung des Fehlers.
  • status: Ein Statuscode, der die Art des Fehlers angibt.

Wird beispielsweise ein ungültiger placeId-Parameter gesendet, wird der folgende Fehler zurückgegeben:

{
  "error": {
    "code": 400,
    "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"",
    "status": "INVALID_ARGUMENT"
  }
}

Im Folgenden finden Sie mögliche Fehler:

Code Status die Botschaft und Fehlerbehebung
400 INVALID_ARGUMENT Der angegebene Schlüssel ist ungültig. Ihr API-Schlüssel ist ungültig oder nicht in der Anfrage enthalten. Achten Sie darauf, dass Sie den gesamten Schlüssel angegeben und die API für diesen Schlüssel aktiviert haben.
400 INVALID_ARGUMENT Der Parameter \„path\“ enthält einen ungültigen Wert: 💌" Ihre Anfrage enthielt ungültige Argumente. Die wahrscheinlichsten Ursachen für diesen Fehler sind:
  • Es gibt ein Problem mit dem path-Parameter.
    Sie benötigen mindestens 1 und weniger als 100 Punkte. Jeder Punkt sollte ein Zahlenpaar sein, das durch ein Komma getrennt ist, z. B. 48.409114,-123.369158. Die Punkte müssen durch einen senkrechten Strich („|“) getrennt werden.
  • Ihre Anfrage enthielt eine ungültige placeId.
  • Ihre Anfrage enthielt sowohl placeId- als auch path-Werte. Pro Anfrage kann nur einer dieser Parameter angegeben werden.

Dieser Fehler wird nicht zurückgegeben, wenn für eine Straße, die nicht mehr existiert, oder einen Ort, der keine Straße ist, ein placeId übergeben wird.

403 PERMISSION_DENIED Eine nicht registrierte Anfrage wurde blockiert. Registrieren Sie sich über die Google Developers Console. Der Antrag wurde aus einem oder mehreren der folgenden Gründe abgelehnt:
  • Der API-Schlüssel fehlt oder ist ungültig.
  • Die Abrechnung wurde für Ihr Konto nicht aktiviert.
  • Eine selbst festgelegte Nutzungsbeschränkung wurde überschritten.
  • Die angegebene Zahlungsmethode ist nicht mehr gültig, z. B. weil eine Kreditkarte abgelaufen ist.

Damit Sie Google Maps Platform-Produkte nutzen können, muss die Abrechnung für Ihr Konto aktiviert sein. Außerdem müssen alle Anfragen einen gültigen API-Schlüssel enthalten. So beheben Sie das Problem:

404 NOT_FOUND Für diesen Dienst ist HTTPS erforderlich. Achten Sie darauf, dass Sie Anfragen an https://roads.googleapis.com/ und nicht an http://roads.googleapis.com/ senden.
429 RESOURCE_EXHAUSTED Die Anfrage wurde gedrosselt, da die Anfragelimits für das Projekt erreicht wurden. Sie haben das Anfragelimit überschritten, das Sie in der Google Cloud Platform Console konfiguriert haben. Dieses Limit wird in der Regel auf Anfragen pro Tag, Anfragen pro 100 Sekunden und Anfragen pro 100 Sekunden und Nutzer festgelegt. Dieses Limit sollte konfiguriert werden, um zu verhindern, dass eine einzelne oder eine kleine Gruppe von Nutzern Ihr Tageskontingent aufbraucht, und gleichzeitig allen Nutzern einen angemessenen Zugriff zu ermöglichen. Informationen zum Konfigurieren dieser Limits finden Sie unter API-Nutzung deckeln.

Exponentielle Backoffs

Wenn Anfragen fehlschlagen, sollten Sie Anfragen mit exponentiellem Backoff wiederholen. Wenn eine Anfrage beispielsweise einmal fehlschlägt, wiederholen Sie den Vorgang nach einer Sekunde. Wenn sie noch einmal fehlschlägt, wiederholen Sie den Vorgang nach zwei, dann nach vier Sekunden usw. Dadurch wird sichergestellt, dass die Google-Server durch fehlerhafte Anfragen oder groß angelegte Fehler nicht überflutet werden, da viele Clients versuchen, Anfragen sehr schnell zu wiederholen.

Häufig gestellte Fragen zur Fehlerbehebung

Probleme bei der Implementierung

Mit welcher Häufigkeit soll ich den Standort meines Fahrzeugs erfassen?
Für optimale Ergebnisse bei Straßenbewegen werden alle 1 bis 10 Sekunden empfohlen.
Ist die Anzahl der Punkte, die ich pro Abfrage senden kann, begrenzt?
Ja, eine Abfrage kann maximal 100 Punkte haben.
Wie genau sollte ich meine ausgerichteten Breiten- und Längengradpaare speichern?
Damit Pfade, die auf die Straßen ausgerichtet sind, auch bei maximaler Zoomstufe den Straßen folgen, sollten Sie die jeweiligen Breiten- und Längengradpaare mit einer Genauigkeit von 7 Dezimalstellen speichern.
Kann ich codierte Polylinien zur Anzeige von ausgerichteten Pfaden verwenden?
Codierte Polylinien werden nur mit einer Genauigkeit von fünf Dezimalstellen angegeben, was zu einem Fehler von etwa zwei Metern führt. Codierte Polylinien sind daher nicht geeignet, wenn Sie möchten, dass Ihre ausgerichteten Pfade bei hohen Zoomstufen der Straße folgen.

Häufige Probleme

Einige Punkte werden nicht angedockt oder die Pfade sind Lücken. Wie kann ich das ändern?
  • Wenn Sie Stichproben in zeitlichen Intervallen erheben, müssen die Punkte in kürzeren Intervallen erfasst werden (alle 1 bis 10 Sekunden). Bei einem längeren Intervall (z. B. 60 Sekunden) kann der Algorithmus für die Straßenausrichtung die zurückgelegten Straßen möglicherweise nicht mit ausreichender Genauigkeit ermitteln.
  • Wenn Sie manuell auf eine Karte klicken, um Punkte zu erstellen, ist es sehr einfach, Pfade mit wenigen Punkten oder dünnbesetzten Punkten zu erstellen, die der Ausrichtungsalgorithmus nicht gut beherrscht. Der Andockalgorithmus funktioniert am besten bei Punkten, die nahe beieinander liegen. Sehen Sie sich die Demo zum Ausrichten an Straßen an oder testen Sie Ihre Pfade mit dem Straßenprüftool.
Warum sind meine eingezeichneten Pfade zerklüftet oder leicht von der Straße abweichen, wenn ich heranzoome?
  • Wird die Genauigkeit der ausgerichteten Breiten- und Längengradpaare abgeschnitten, bevor sie angezeigt werden? Das Speichern von ausgerichteten Breiten- und Längengradpaaren mit einer Genauigkeit von weniger als 7 Dezimalstellen führt zu Genauigkeitsfehlern, wenn der fixierte Pfad auf der Karte angezeigt wird.
  • Verwenden Sie codierte Polylinien? Codierte Polylinien schneiden Breiten- und Längengradpaare auf fünf Dezimalstellen ab, was einen Fehler von mehreren Metern zur Folge hat, was dazu führt, dass die Linien bei hohen Zoomstufen zerklüftet oder leicht von der Straße abweichen.

Wenn keiner der oben genannten Fälle zutrifft, wurden die Kartenkacheln möglicherweise erst kürzlich aktualisiert, sodass sie nicht mehr mit dem Straßenindex synchron sind, der für die Aufnahme verwendet wurde. Wenn nur wenige Ihrer Abfragen betroffen sind, ist dies wahrscheinlich die Ursache. Da Google Maps regelmäßig aktualisiert wird, kommt es gelegentlich vor, aber auch häufiger, wenn Sie sich regelmäßig alte Pfade auf einer Karte ansehen (z. B. Pfade, die vor einigen Wochen eingezeichnet wurden). Für eine optimale Visualisierung sollten alte Pfade kurz vor der Anzeige auf einer Karte neu aufgenommen werden, um die Inkonsistenzen zwischen den Kartenkacheln und dem für die Aufnahme verwendeten Straßenindex zu minimieren.

Woran könnte das liegen?
Geschwindigkeitsbegrenzungen stammen aus verschiedenen Quellen, die in Bezug auf Genauigkeit und Abdeckung variieren. Wenn Sie feststellen, dass z. B. Geschwindigkeitsbegrenzungen für einen bestimmten Straßentyp oder in einem bestimmten Bereich durchgehend falsch sind, teilen Sie uns dies folgendermaßen mit:
  1. Öffnen Sie Google Maps auf Ihrem Desktop-Computer ODER die Google Maps-App für Android.
  2. Öffnen Sie das Menü auf der linken Seite.
  3. Wähle Feedback senden aus. Hinweis: Möglicherweise wirst du aufgefordert, dich anzumelden.
  4. Wählen Sie Karte bearbeiten aus.
  5. Wählen Sie den Straßenabschnitt aus, den Sie bearbeiten möchten.
  6. Wähle Weiter aus.
  7. Geben Sie im Feld "Sonstige" an, dass die Höchstgeschwindigkeit für diese Straße falsch ist.
  8. Tippe auf Senden.
Hier können Sie auch andere Probleme melden, z. B. wenn die Straße einen falschen Namen hat, falsch eingezeichnet, gesperrt oder privat ist.
Warum schneiden meine abgeschnittenen Pfade ab und zeichne sie ab, anstatt der Straße zu folgen?
Prüfen Sie Folgendes, um das Problem zu beheben:
  • Der Parameter interpolate muss auf true festgelegt sein.
  • Die ursprünglichen Datenpunkte sollten in ausreichenden Intervallen erfasst werden (alle 1 bis 10 Sekunden).
Warum werden viele Straßensegmente im eingezeichneten Pfad für eine Straße ohne Änderungen an der Geschwindigkeitsbegrenzung zurückgegeben?
Wenn der Parameter interpolate auf true festgelegt ist, gibt die Abfrage für eine Straßenausrichtung eine Polylinie zurück, die der Straße entlang von Ecken, Kurven und Kreisverkehren folgt. Bei Kurven werden mehrere Straßensegmente zurückgegeben, auch wenn sich die Höchstgeschwindigkeit nicht ändert, um eine Polylinie zu erstellen, die der Straßengeometrie genau entspricht.