Fehlermeldungen und Lösungen
Anders als der Map Server antwortet die Routing Engine mit strukturiertem JSON:
{ "error_code": 125, "error": "No costing method found: 'gibtesnicht'", "status_code": 400, "status": "Bad Request"}error_code ist Valhallas eigene Nummer und genauer als der HTTP-Status —
werten Sie ihn aus, nicht den 400er.
Gemessene Fälle
Abschnitt betitelt „Gemessene Fälle“error_code |
Meldung | Ursache und Abhilfe |
|---|---|---|
110 |
Insufficiently specified required parameter '…' |
Ein Pflichtfeld fehlt — bei /route fast immer locations. Der häufigste Code überhaupt, weil ihn jede unvollständige Anfrage auslöst |
125 |
No costing method found: '…' |
Unbekannter Wert in costing. Gültig sind u. a. auto, bicycle, pedestrian, truck, bus, motorcycle |
442 |
No path could be found for input |
Bei /trace_route: Punkte zu weit auseinander, abseits des Netzes, oder costing passt nicht zum Weg. Siehe Map Matching |
Auch eine völlig leere Anfrage wird erklärt, statt nur abgewiesen zu werden.
GET /route ohne Parameter und POST /route mit {} liefern beide denselben
Körper (125 B):
{"error_code": 110, "error": "Insufficiently specified required parameter 'locations'", "status_code": 400, "status": "Bad Request"}Lesen Sie ihn also aus, statt bei einem 400er zu raten — er nennt das fehlende Feld beim Namen.
Ohne Token: 401 / 403
Abschnitt betitelt „Ohne Token: 401 / 403“Alle Dienste verlangen einen Token. Fehlt er oder ist er ungültig, wird die Anfrage mit 401 oder 403 abgelehnt. Siehe Zugriff auf die Dienste.
Was wir nicht beobachtet haben
Abschnitt betitelt „Was wir nicht beobachtet haben“- 429: Eine Begrenzung der Anfragerate ist uns nicht bekannt und wurde nicht gemessen. Das ist keine Zusage — wer hohe Lasten oder große Matrizen plant, spricht uns vorher an.
Diese Punkte stehen hier ausdrücklich als offen, nicht als „gibt es nicht”.
Wenn eine Route unplausibel ist
Abschnitt betitelt „Wenn eine Route unplausibel ist“Kein Fehlercode, aber der häufigste Ärger — und meist eine dieser drei Ursachen:
- Ein Punkt ist woanders eingerastet, als Sie denken.
/sources_to_targetsgibt die eingerasteten Koordinaten zurück (begin_lat,end_lat); dort sehen Sie, wohin ein Punkt gerutscht ist. - Die Polylinie wurde mit Präzision 5 dekodiert. Dann liegt die Route um den Faktor 10 daneben — ohne Fehlermeldung. Valhalla kodiert mit Präzision 6.
- Der Kachelstand ist älter als die Straße.
/statusnennttileset_last_modified; was danach gebaut wurde, kennt der Dienst noch nicht.