Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

202
Views
¿Es posible encontrar la ubicación geográfica del dispositivo según la dirección IP usando NodeJS?

Estoy tratando de implementar una función como la que ofrece Instagram; Estoy hablando de su página de "actividad de inicio de sesión". Esto es de lo que hablo: ingrese la descripción de la imagen aquí

Cada vez que el usuario inicia sesión, el dispositivo en uso se almacena actualmente en la página. ¿Cómo haría eso?

El código actual que tengo usa dos bibliotecas, una para encontrar ip.address() del dispositivo que se está usando y una segunda que se supone que me ayudará a obtener los datos de ubicación relacionados con la dirección IP dada. Lamentablemente, no puedo hacer que funcione. Así es como se ve el código:

 const ipLocation = require('ip-to-location') const ip = require('ip') const loc = await ipLocation.fetch(ip.address()) console.dir('Location', loc) await User.findOneAndUpdate( { email: req.body.email }, { $push: { loginActivity: { type: 'Point', coordinates: [loc.longitude, loc.latitude], // formattedAddress: loc[0].formattedAddress, // street: loc[0].streetName, city: loc.city.city, state: loc.region_name, zipcode: loc.zip_code, country: loc.country_code, }, }, } )

¿Hay alguna biblioteca alternativa para usar? o alguien me puede señalar en la dirección correcta para hacer esto posible?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Bueno, si puede obtener la dirección IP de un usuario, puede probar ipgeolocation.io

Esta es una API gratuita que puede brindarle el valor de latitud y longitud de una dirección IP (y mucho más si lo necesita).

Más en documentación

about 4 years ago · Juan Pablo Isaza Report

0

Puede probar IP2Location Node.js.

https://github.com/ip2ubicación/ip2ubicación-nodejs

Puede llamar a un archivo de base de datos ( gratis o de pago ) o llamar a un servicio web .

Para la base de datos, el código se verá similar al siguiente:

 const {IP2Location} = require("ip2location-nodejs"); let ip2location = new IP2Location(); ip2location.open("./DB25.BIN"); testip = ['8.8.8.8', '2404:6800:4001:c01::67']; for (var x = 0; x < testip.length; x++) { result = ip2location.getAll(testip[x]); for (var key in result) { console.log(key + ": " + result[key]); } console.log("--------------------------------------------------------------"); } ip2location.close();

Para el servicio web, puede usar el siguiente ejemplo:

 const {IP2LocationWebService} = require("ip2location-nodejs"); let ws = new IP2LocationWebService(); let ip = "8.8.8.8"; let apiKey = "YOUR_API_KEY"; let apiPackage = "WS25"; let useSSL = true; // addon and lang to get more data and translation (leave both blank if you don't need them) let addon = "continent,country,region,city,geotargeting,country_groupings,time_zone_info"; let lang = "fr"; ws.open(apiKey, apiPackage, useSSL); ws.lookup(ip, addon, lang, (err, data) => { if (!err) { console.log(data); ws.getCredit((err, data) => { if (!err) { console.log(data); } }); } });
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!