Errores
En el caso de un error, se mostrará un cuerpo de respuesta de error de formato estándar y el código de estado HTTP se establecerá en un estado de error.
La respuesta contiene un objeto con un solo objeto error
y las siguientes claves:
code
: Es el mismo que el estado HTTP de la respuesta.message
: Es una descripción breve del error.status
: Es un código de estado que indica la naturaleza del error.
Por ejemplo, si envías un parámetro placeId
no válido, se mostrará el siguiente error:
{ "error": { "code": 400, "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"", "status": "INVALID_ARGUMENT" } }
Los errores posibles incluyen los siguientes:
Programa | Estado | Mensajes | Solución de problemas |
---|---|---|---|
400 | INVALID_ARGUMENT |
La clave que proporcionaste no es válida. | Tu clave de API no es válida o no se incluyó en la solicitud. Asegúrate de haber incluido la clave completa y de haber habilitado la API para esta. |
400 | INVALID_ARGUMENT |
El parámetro "\"path\" contiene un valor no válido: 😎" | Tu solicitud contenía argumentos no válidos. Las causas más probables de este error son las siguientes:
Este error no se mostrará si se pasa un |
403 | PERMISSION_DENIED |
Se bloqueó la solicitud no registrada. Regístrate con Google Developers Console. | Se rechazó la solicitud por uno o más de los siguientes motivos:
Para usar los productos de Google Maps Platform, debes habilitar la facturación en tu cuenta y todas las solicitudes deben incluir una clave de API válida. Para solucionar este problema, sigue estos pasos:
|
404 | NOT_FOUND |
Se requiere HTTPS para este servicio. | Asegúrate de enviar solicitudes a https://roads.googleapis.com/ y no a http://roads.googleapis.com/ . |
429 | RESOURCE_EXHAUSTED |
Se limitó la solicitud porque se alcanzó el límite de solicitudes del proyecto. | Superaste el límite de solicitudes que configuraste en Google Cloud Platform Console. Por lo general, este límite se establece como solicitudes por día, solicitudes por 100 segundos y solicitudes por 100 segundos por usuario. Este límite se debe configurar para evitar que un solo grupo de usuarios agoten tu cuota diaria y, al mismo tiempo, permitir un acceso razonable a todos los usuarios. Consulta Cómo limitar el uso de la API para configurar estos límites. |
Retirada exponencial
Cuando las solicitudes fallan, debes asegurarte de reintentar las solicitudes con retirada exponencial. Por ejemplo, si una solicitud falla una vez, vuelve a intentarlo después de un segundo; si falla nuevamente, vuelve a intentarlo después de dos segundos, luego cuatro segundos, y así sucesivamente. Esto garantiza que las solicitudes dañadas o las fallas a gran escala no inunden los servidores de Google, ya que muchos clientes intentan reintentar las solicitudes muy rápido.
Preguntas frecuentes sobre la solución de problemas
Problemas de implementación
- ¿Con qué frecuencia debo muestrear la ubicación de mi vehículo?
- Se recomienda usar de 1 a 10 segundos para obtener resultados de alta calidad de snap-to-road.
- ¿Existe un límite para la cantidad de puntos que puedo enviar por consulta?
- Sí, una consulta puede tener 100 puntos como máximo.
- ¿Qué nivel de precisión debo usar para almacenar mis pares de latitud y longitud ajustados?
- Para garantizar que las rutas ajustadas sigan las rutas en todos los niveles de zoom, incluso en el nivel máximo, debes almacenar los pares de latitud y longitud ajustados en 7 decimales de precisión.
- ¿Puedo usar polilíneas codificadas para mostrar rutas ajustadas?
- Las polilíneas codificadas solo se especifican con una precisión de 5 decimales, lo que genera un error de aproximadamente 2 metros. Por lo tanto, las polilíneas codificadas no son adecuadas si deseas que las rutas ajustadas sigan la ruta a altos niveles de zoom.
Problemas habituales
- Algunos puntos no se ajustan o tengo brechas en rutas ajustadas. ¿Cómo puedo corregirlo?
-
- Si estás muestreando tus puntos en intervalos programados, asegúrate de que tus puntos se muestreen en intervalos más cortos (cada 1 a 10 segundos). Si se usa un intervalo más largo (por ejemplo, 60 segundos), es posible que el algoritmo de snap-to-road no pueda determinar las rutas recorridas con suficiente exactitud.
- Si haces clic manualmente en un mapa para crear puntos, es muy fácil crear rutas de acceso con pocos puntos o puntos dispersos que el algoritmo de ajuste no controla bien. El algoritmo de ajuste funciona mejor para los puntos que están cerca. Prueba la demostración de Snap to Roads o usa el Inspector de Roads para probar tus rutas.
- ¿Por qué mis rutas ajustadas están dentadas o ligeramente alejadas de la ruta cuando hago zoom?
-
- ¿ truncas la precisión de los pares de latitud y longitud ajustados antes de mostrarlos? El almacenamiento de pares de latitud y longitud ajustados a una precisión de menos de 7 puntos decimales genera errores de precisión cuando la ruta ajustada se muestra en el mapa.
- ¿Usas polilíneas codificadas? Las polilíneas codificadas truncan los pares de latitud y longitud en 5 decimales, lo que genera un error de varios metros, lo que genera líneas dentadas o ligeramente alejadas de la ruta a altos niveles de zoom.
Si no se cumple ninguna de las condiciones anteriores, es posible que los mosaicos del mapa se hayan actualizado recientemente, lo que hará que no estén sincronizados con el índice de rutas utilizado para ajustar. Si solo algunas de tus consultas se ven afectadas, es probable que esta sea la causa. Como Google Maps se actualiza con frecuencia, es posible que, en ocasiones, ocurra con mayor frecuencia si observas rutas antiguas en un mapa (por ejemplo, rutas que se tomaron hace varias semanas). Para una visualización óptima, debes volver a ajustar las rutas antiguas justo antes de mostrarlas en un mapa, a fin de minimizar las inconsistencias entre los mosaicos de mapas y el índice de rutas utilizado para ajustar.
- ¿Qué podría hacer que el límite de velocidad de la ruta X se muestre de forma incorrecta?
- Los límites de velocidad provienen de varias fuentes que varían en precisión y cobertura.
Si encuentras un patrón, por ejemplo, límites de velocidad para un tipo de ruta en particular o en un área en particular incorrecto, sigue estos pasos
para informarnos:
- Abre Google Maps en tu computadora de escritorio O la app de Google Maps para Android.
- Abre el menú lateral izquierdo.
- Selecciona Enviar comentarios. Nota: Es posible que se te solicite acceder.
- Selecciona Editar el mapa.
- Selecciona el tramo de ruta que deseas editar.
- Selecciona Siguiente.
- En el campo "Otro", indica que el límite de velocidad es incorrecto para esa ruta.
- Selecciona Enviar.
- ¿Por qué mi ruta cortada corta las esquinas en lugar de seguir la ruta?
-
Para corregir este problema, verifica lo siguiente:
- Asegúrate de que el parámetro
interpolate
esté configurado comotrue
. - Verifica que se muestreen los datos originales a intervalos lo suficientemente cercanos (cada 1 a 10 segundos).
- Asegúrate de que el parámetro
- ¿Por qué se muestran muchos tramos de ruta en la ruta ajustada de una ruta sin cambios en el límite de velocidad?
- Cuando el parámetro
interpolate
se establece entrue
, la consulta de snap-to-road muestra una polilínea que sigue la ruta alrededor de las esquinas, las curvas y las rotondas. Si las curvas de las rutas se muestran, se muestran varios tramos de ruta, incluso si el límite de velocidad no cambia, para crear una polilínea que siga la geometría de la ruta de cerca.