• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

161
Vistas
error de posición en la localización en react.js

tengo el siguiente codigo que toma la ubicacion del usuario de una api de google, el detalle que tengo es que la precision es demasiado alta, por ejemplo precision: 2600.670416166183, no se si alguien sepa como solucionar este error seria muy útil

 const useGeoLocation = () => { const [location, setLocation] = useState({ loaded: true, coordinates: { lat: "", lng: "", }, aceptacion: null, }); const onSuccess = (location) => { console.log(location); setLocation({ loaded: true, coordinates: { lat: resultado.location.lat, lng: resultado.location.lng, }, aceptacion:1 }); }; useEffect(() => { const url = `https://www.googleapis.com/geolocation/v1/geolocate?key=......`; const http = new XMLHttpRequest(); http.open("POST", url); http.onreadystatechange = function(){ if(this.readyState == 4 && this.status == 200){ let resultado = JSON.parse(this.responseText); let latitude = resultado.location.lat; let longitude = resultado.location.lng; setLocation({ loaded: true, coordinates: { lat: resultado.location.lat, lng: resultado.location.lng, }, aceptacion:1 }); console.log(resultado); return resultado } } http.send(); }, []); return location; }; export default useGeoLocation;
almost 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Creo que está utilizando la API incorrecta para sus necesidades.

La API de geolocalización de Google se utiliza para obtener la ubicación de las informaciones de Wifi/Bluetooth/Cell Tower/IP. En su ejemplo, no incluye ninguna información adicional en el cuerpo de su solicitud, por lo que Google solo proporcionará la geolocalización en función de la IP del usuario, que no tiene una buena precisión.

Si desea una mayor precisión con esta API, debe proporcionar puntos Wifi o Bluetooth cerca del usuario (consulte la documentación aquí ), pero no creo que eso sea lo que desea, así que creo que la mejor solución es usar navigator.geolocation.getCurrentPosition función nativa de todos los navegadores, obtendrá la ubicación directamente desde el dispositivo (GPS/Wifi/Bluetooth) como allí:

https://developers.google.com/maps/documentation/geolocalización/overview

Puede encontrar ejemplos aquí:

¿Cómo obtengo la ubicación del usuario a través de navigator.geolocation antes de que mi recuperación se ejecute en componentDidMount() en react.js?

¿Cómo obtener información de ubicación en reaccionar?

almost 3 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda