Fehlerbehebung

Fehler

Bei einem Fehler wird ein Fehlerantwort-Textkörper im Standardformat zurückgegeben und der HTTP-Statuscode wird auf einen Fehlerstatus gesetzt.

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

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

Wenn Sie beispielsweise einen ungültigen placeId-Parameter senden, wird der folgende Fehler zurückgegeben:

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

Zu den möglichen Fehlern zählen:

Code Status Meldung Fehlerbehebung
400 INVALID_ARGUMENT Der angegebene Schlüssel ist ungültig. Ihr API-Schlüssel ist ungültig oder wurde nicht in die Anfrage aufgenommen. 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 Parameter path.
    Die Anzahl der Punkte muss mindestens 1 und maximal 100 betragen. Jeder Punkt sollte aus zwei durch ein Komma getrennten Zahlen bestehen, z. B.: 48.409114,-123.369158. Punkte müssen durch einen senkrechten Strich (|) getrennt werden.
  • Ihre Anfrage enthielt eine ungültige placeId.
  • Ihre Anfrage enthielt sowohl placeId als auch einen path. Für jede Anfrage kann nur einer dieser Parameter angegeben werden.

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

403 PERMISSION_DENIED Die nicht registrierte Anfrage wurde blockiert. Registrieren Sie sich bitte ü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 ist für Ihr Konto nicht aktiviert.
  • Das von Ihnen festgelegte Nutzungslimit wurde überschritten.
  • Die angegebene Zahlungsmethode ist nicht mehr gültig. Das kann z. B. bei einer abgelaufenen Kreditkarte der Fall sein.

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 das Limit für Projektanfragen erreicht wurde. Sie haben das in der Google Cloud Console konfigurierte Anfragelimit überschritten. Dieses Limit wird in der Regel als Anfragen pro Tag, Anfragen pro 100 Sekunden und Anfragen pro 100 Sekunden und Nutzer festgelegt. Dieses Limit sollte so konfiguriert sein, dass ein einzelner Nutzer oder eine kleine Gruppe von Nutzern Ihr Tageskontingent nicht aufbrauchen kann, während allen Nutzern ein angemessener Zugriff gewährt wird. Informationen zum Konfigurieren dieser Limits finden Sie unter API-Nutzung deckeln.

Exponentielle Backoffs

Wenn Anfragen fehlschlagen, sollten Sie sie mit exponentiellem Backoff wiederholen. Wenn eine Anfrage beispielsweise einmal fehlschlägt, wird nach einer Sekunde ein neuer Versuch unternommen. Schlägt dieser erneut fehl, wird nach zwei Sekunden, dann nach vier Sekunden usw. ein neuer Versuch unternommen. So wird verhindert, dass fehlerhafte Anfragen oder großflächige Fehler die Google-Server überlasten, da viele Clients sehr schnell versuchen, Anfragen noch einmal zu senden.

Häufig gestellte Fragen zur Fehlerbehebung

Probleme bei der Implementierung

Mit welcher Häufigkeit sollte ich den Standort meines Fahrzeugs erfassen?
Für qualitativ hochwertige Ergebnisse beim Anpassen an Straßen werden alle 1–10 Sekunden empfohlen.
Ist die Anzahl der Punkte, die ich pro Anfrage senden kann, begrenzt?
Ja, eine Suchanfrage kann maximal 100 Punkte haben.
Welchen Genauigkeitsgrad sollte ich für die Speicherung meiner gesnapten Breiten-/Längengradpaare verwenden?
Damit angehängte Pfade auch bei maximaler Zoomstufe den Straßen folgen, sollten Sie die Breiten- und Längengrade mit sieben Dezimalstellen speichern.
Kann ich codierte Polylinien verwenden, um aneinandergefügte Pfade anzuzeigen?
Codierte Polylinien werden nur mit einer Genauigkeit von fünf Dezimalstellen angegeben, was zu einem Fehler von etwa 2 Metern führt. Codierte Polylinien eignen sich daher nicht, wenn Sie möchten, dass Ihre angepinnten Pfade bei hoher Zoomstufe der Straße folgen.

Häufige Probleme

Einige Punkte werden nicht angeklickt oder es gibt Lücken in angeklickten Pfaden. Wie kann ich das korrigieren?
  • Wenn Sie Ihre Punkte in bestimmten Zeitabständen erfassen, sollten Sie kürzere Intervalle (alle 1–10 Sekunden) verwenden. Wenn ein längeres Intervall verwendet wird (z. B. 60 Sekunden), kann der Algorithmus zum Anpinnen an Straßen möglicherweise nicht mit ausreichender Genauigkeit die zurückgelegten Straßen ermitteln.
  • Wenn Sie manuell auf eine Karte klicken, um Punkte zu erstellen, ist es sehr einfach, Pfade mit wenigen oder wenigen Punkten zu erstellen, die vom Snap-Algorithmus nicht gut verarbeitet werden. Der Snap-Algorithmus funktioniert am besten bei Punkten, die nah beieinander liegen. Sehen Sie sich die Demo zum Anpassen an Straßen an oder verwenden Sie den Prüfer für Straßen, um Ihre Pfade zu testen.
Warum sind meine angepinnten Pfade beim Heranzoomen gezackt oder leicht von der Straße abweichend?
  • Wird die Genauigkeit der gesnapten Breiten-/Längengrad-Paare vor der Anzeige gekürzt? Wenn Sie gesnappte Breiten-/Längengrad-Paare mit einer Genauigkeit von weniger als sieben Nachkommastellen speichern, kommt es zu Genauigkeitsfehlern, wenn der gesnappte Pfad auf der Karte angezeigt wird.
  • Verwenden Sie codierte Polylinien? Bei codierten Polylinien werden Breiten-/Längengradpaare auf fünf Dezimalstellen gekürzt, was zu einem Fehler von mehreren Metern führt. Bei hohen Zoomstufen sind die Linien dann gezackt oder leicht von der Straße abweichend.

Wenn keiner der oben genannten Punkte zutrifft, wurden die Kartenkacheln möglicherweise vor Kurzem aktualisiert, wodurch sie nicht mehr mit dem für das Snapping verwendeten Straßenindex synchronisiert sind. Wenn nur wenige Ihrer Suchanfragen betroffen sind, ist dies wahrscheinlich die Ursache. Da Google Maps regelmäßig aktualisiert wird, kann dies gelegentlich vorkommen. Das ist häufiger der Fall, wenn Sie sich regelmäßig alte Pfade auf einer Karte ansehen, z. B. Pfade, die vor mehreren Wochen aufgenommen wurden. Für eine optimale Visualisierung sollten Sie alte Pfade kurz vor der Darstellung auf einer Karte neu anpinnen, um Inkonsistenzen zwischen den Kartenkacheln und dem für das Anpinnen verwendeten Straßenindex zu minimieren.

Was könnte dazu führen, dass das Tempolimit für Straße X falsch angezeigt wird?
Geschwindigkeitsbeschränkungen stammen aus verschiedenen Quellen, die sich in Genauigkeit und Abdeckung unterscheiden. Wenn Sie ein Muster feststellen, z. B. dass Geschwindigkeitsbeschränkungen für einen bestimmten Straßentyp oder in einem bestimmten Gebiet immer falsch sind, gehen Sie so vor, um uns dies mitzuteilen:
  1. Öffnen Sie Google Maps auf Ihrem Computer ODER die Google Maps App für Android.
  2. Öffne das Menü auf der linken Seite.
  3. Wähle Feedback senden aus. Hinweis: Möglicherweise werden Sie aufgefordert, sich anzumelden.
  4. Wählen Sie Karte bearbeiten aus.
  5. Wählen Sie das Straßensegment aus, das Sie bearbeiten möchten.
  6. Wählen Sie Weiter aus.
  7. Geben Sie im Feld „Sonstiges“ an, dass das Tempolimit für diese Straße falsch ist.
  8. Wählen Sie Senden aus.
Hier können Sie auch andere Probleme melden, z. B. wenn die Straße einen falschen Namen hat, falsch gezeichnet ist oder gesperrt oder privat ist.
Warum macht mein angeklickter Pfad Abkürzungen, anstatt der Straße zu folgen?
Prüfen Sie Folgendes, um das Problem zu beheben:
  • Der Parameter interpolate muss auf true festgelegt sein.
  • Prüfen Sie, ob Ihre ursprünglichen Datenpunkte in ausreichend kurzen Intervallen (alle 1–10 Sekunden) abgetastet werden.
Warum werden für eine Straße ohne Änderungen der Geschwindigkeitsbegrenzung viele Straßenabschnitte im angepinnten Pfad zurückgegeben?
Wenn der Parameter interpolate auf true festgelegt ist, gibt die Abfrage „An Straße anpinnen“ eine Polylinie zurück, die der Straße um Ecken, Kurven und Kreisverkehre herum folgt. Wenn sich die Straße krümmt, werden mehrere Straßenabschnitte zurückgegeben, auch wenn sich die zulässige Höchstgeschwindigkeit nicht ändert. So wird eine Polylinie erstellt, die der Straßengeometrie genau folgt.