Saltar al contenido

¿El mejor módulo de node.js para encontrar la ubicación?

Solución:

El uso de la geolocalización basada en IP es posible, pero no muy preciso. Así que le sugiero que piense en optar por un enfoque híbrido, como intentar obtener la ubicación de los usuarios a través de la API de geolocalización HTML5 dentro del navegador y volver al lado del servidor si es necesario.

Eché un vistazo a los dos módulos de ubicación / geoip más utilizados disponibles para node.js y ambos usan los conjuntos de datos proporcionados por MaxMind. AFAIK, tienes que mantener estas bases de datos actualizadas manualmente, lo cual es una clara decepción. Por lo tanto, puede considerar escribir un pequeño servicio / script de sincronización, que actualice la base de datos una vez al mes. (Puede encontrar más información sobre la solución gratuita MaxMinds aquí).

kuno/GeoIP es un enlace GeoIP, por lo que en esencia está usando la biblioteca libGeoIP C, lo cual está bien, pero tal vez no sea tan portátil como la implementación de JavaScript puro bluesmoon/node-geoip ofertas. Ambos están bien y depende de usted qué biblioteca le guste más. En términos de rendimiento, tiene que hacer algunas evaluaciones comparativas (si este tema le importa)… No hay una respuesta general a la pregunta de qué tipo de módulo (enlace C / nativo) será más rápido.

Si está dispuesto a gastar unos cuantos dólares, también puede buscar en MaxMinds Web Service, que es una API REST simple y será la forma más precisa de hacerlo. La documentación es bastante buena, por lo que comenzar con eso no será un problema.

Si obtiene la IP, siempre puede llamar a un servicio externo para obtener la información de ubicación como freegeoip.net y usar el módulo de solicitud.

(ip, location) ->
  url="http://freegeoip.net/json/" + ip
  request.get url, (error, response, body) ->
    if !error && response.statusCode == 200
      data = JSON.parse body
      location data

Para la información de la red, no tengo una solución, pero también estoy buscando una.

Puede obtener toda la información que busca de mi API en http://ipinfo.io API:

$ curl ipinfo.io
{
  "ip": "67.188.232.131",
  "hostname": "c-67-188-232-131.hsd1.ca.comcast.net",
  "city": "Mountain View",
  "region": "California",
  "country": "US",
  "loc": "37.4192,-122.0574",
  "org": "AS7922 Comcast Cable Communications, Inc.",
  "postal": "94043"
}

Es compatible con JSONP y CORS, por lo que puede usarlo en el lado del servidor o del cliente. Más detalles están disponibles en http://ipinfo.io/developers

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *