Errori
In caso di errore, verrà restituito un corpo della risposta di errore in formato standard e il codice di stato HTTP verrà impostato su uno stato di errore.
La risposta contiene un oggetto con un singolo oggetto error
con le seguenti chiavi:
code
: corrisponde allo stato HTTP della risposta.message
: una breve descrizione dell'errore.status
: un codice di stato che indica la natura dell'errore.
Ad esempio, l'invio di un parametro placeId
non valido restituirà il seguente
errore:
{ "error": { "code": 400, "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"", "status": "INVALID_ARGUMENT" } }
I possibili errori includono:
Codice | Stato | Messaggio | Risoluzione dei problemi |
---|---|---|---|
400 | INVALID_ARGUMENT |
La chiave che hai fornito non è valida. | La chiave API non è valida o non è stata inclusa nella richiesta. Assicurati di aver incluso l'intera chiave e di aver attivato l'API per questa chiave. |
400 | INVALID_ARGUMENT |
Il parametro "\"path\" contiene un valore non valido: ☃" | La richiesta conteneva argomenti non validi. Le cause più probabili di questo errore sono:
Questo errore non viene restituito se viene passato un valore |
403 | PERMISSION_DENIED |
La richiesta non registrata è stata bloccata. Registrati utilizzando Google Developers Console. | La richiesta è stata rifiutata per uno o più dei seguenti motivi:
Per utilizzare i prodotti Google Maps Platform, la fatturazione deve essere attivata sul tuo account e tutte le richieste devono includere una chiave API valida. Per risolvere il problema, procedi nel seguente modo:
|
404 | NOT_FOUND |
Per questo servizio è obbligatorio HTTPS. | Assicurati di inviare richieste a
https://roads.googleapis.com/ e non
http://roads.googleapis.com/ . |
429 | RESOURCE_EXHAUSTED |
La richiesta è stata limitata a causa del raggiungimento dei limiti di richieste di progetto. | Hai superato il limite di richieste configurato nella console della piattaforma Google Cloud. In genere, questo limite viene impostato come richieste al giorno, richieste ogni 100 secondi e richieste ogni 100 secondi per utente. Questo limite deve essere configurato per impedire a un singolo utente o a un piccolo gruppo di utenti di esaurire la quota giornaliera, consentendo al contempo un accesso ragionevole a tutti gli utenti. Per configurare questi limiti, consulta la sezione Limitazione dell'utilizzo dell'API. |
Backoff esponenziale
Quando le richieste non vanno a buon fine, devi assicurarti di riprovare con un backoff esponenziale. Ad esempio, se una richiesta non va a buon fine una volta, riprova dopo un secondo. Se non va a buon fine di nuovo, riprova dopo due secondi, poi dopo quattro secondi e così via. In questo modo, le richieste non valide o gli errori su larga scala non inondano i server di Google, poiché molti client tentano di riprovare molto rapidamente.
Domande frequenti sulla risoluzione dei problemi
Problemi di implementazione
- Con quale frequenza devo campionare la posizione del veicolo?
- Si consiglia di scattare una foto ogni 1-10 secondi per ottenere risultati di alta qualità con l'allineamento alla strada.
- Esiste un limite al numero di punti che posso inviare per query?
- Sì, una query può avere al massimo 100 punti.
- Quale livello di precisione devo utilizzare per memorizzare le coppie di latitudine/longitudine messe a punto?
- Per assicurarti che i percorsi agganciati seguano le strade a tutti i livelli di zoom, anche al livello di zoom massimo, devi memorizzare le coppie di latitudine/longitudine agganciate con una precisione di 7 cifre decimali.
- Posso utilizzare polilinee codificate per visualizzare percorsi agganciati?
- I polilinee codificati sono specificati solo con una precisione di 5 cifre decimali, con un errore di circa 2 metri. Pertanto, i polilinee codificati non sono adatti se vuoi che i percorsi agganciati seguano la strada a livelli di zoom elevati.
Problemi comuni
- Alcuni punti non vengono allineati o ci sono spazi nei percorsi allineati. Come posso rimediare?
-
- Se esegui il campionamento dei punti a intervalli di tempo, assicurati che vengano campionati a intervalli più brevi (ogni 1-10 secondi). Se viene utilizzato un intervallo più lungo (ad esempio 60 secondi), l'algoritmo di adeguamento alla strada potrebbe non essere in grado di determinare le strade percorse con sufficiente precisione.
- Se fai clic manualmente su una mappa per creare punti, è molto facile creare percorsi con pochi punti o punti sparsi che l'algoritmo di aggancio non gestisce bene. L'algoritmo di agganci funziona meglio per i punti vicini. Prova la demo di Adattamento alle strade o utilizza l'strumento di ispezione delle strade per testare i percorsi.
- Perché i percorsi acquisiti con snap sono frastagliati o leggermente fuori dalla strada quando aumento lo zoom?
-
- Taglia la precisione delle coppie di latitudine/longitudine acquisite prima di visualizzarle? L'archiviazione di coppie di latitudine/longitudine con una precisione inferiore a 7 cifre decimali causa errori di precisione quando il percorso agganciato viene visualizzato sulla mappa.
- Utilizzi polilinee codificate? Le polilinee codificate troncano le coppie di latitudine/longitudine a 5 cifre decimali, il che introduce un errore di diversi metri, con linee frastagliate o leggermente fuori dalla strada a livelli di zoom elevati.
Se non si tratta dei casi elencati sopra, è possibile che i riquadri della mappa siano stati aggiornati di recente, causando la mancata sincronizzazione con l'indice stradale utilizzato per lo snapping. Se sono interessate solo alcune delle tue query, è probabile che sia questa la causa. Poiché Google Maps viene aggiornato regolarmente, questo può accadere di tanto in tanto e può verificarsi più spesso se consulti regolarmente percorsi vecchi su una mappa (ad es. percorsi acquisiti diverse settimane fa). Per una visualizzazione ottimale, devi ripetere lo snap dei vecchi percorsi appena prima di mostrarli su una mappa, in modo da minimizzare le incoerenze tra i riquadri della mappa e l'indice stradale utilizzato per lo snap.
- Cosa potrebbe causare la visualizzazione errata del limite di velocità per la strada X?
- I limiti di velocità provengono da diverse fonti che variano in termini di accuratezza e copertura.
Se riscontri una situazione ricorrente, ad esempio limiti di velocità in modo sistematico errati per un determinato tipo di strada o in una determinata area, segui questi passaggi per comunicarcelo:
- Apri Google Maps sul computer Oppure l'app Google Maps per Android.
- Apri il menu a sinistra.
- Seleziona Invia feedback. Nota: è possibile che ti venga chiesto di accedere.
- Seleziona Modifica la mappa.
- Seleziona il tratto di strada da modificare.
- Seleziona Avanti.
- Nel campo "Altro", indica che il limite di velocità è errato per quella strada.
- Seleziona Invia.
- Perché il mio percorso a scatti taglia le curve anziché seguire la strada?
-
Per risolvere il problema, verifica quanto segue:
- Assicurati che il parametro
interpolate
sia impostato sutrue
. - Verifica che i punti dati originali vengano campionati a intervalli sufficientemente ravvicinati (ogni 1-10 secondi).
- Assicurati che il parametro
- Perché nel percorso agganciato vengono restituiti molti tratti di strada per una strada senza variazioni di limiti di velocità?
- Quando il parametro
interpolate
è impostato sutrue
, la query di adeguamento alla strada restituisce una polilinea che segue la strada in corrispondenza di incroci, curve e rotonde. Se la strada è in curva, vengono restituiti più segmenti anche se il limite di velocità non cambia, in modo da creare un polilinea che segua da vicino la geometria della strada.