Esto no es un duplicado de esta publicación SO . Ese método no me funciona. La salida se muestra a continuación. Estoy ejecutando un servidor de nodo local en mi MacBook y usando Chrome para probar. Obtengo esta salida.
indefinido | ::1
Estoy conectado a la red y puedo verificar que mi navegador tiene una dirección IP usando zshell en Mac que en realidad es (he ocultado los últimos 3 dígitos para esta publicación):
100.64.98.xxx
Sin embargo, desde mi servidor no obtengo una lectura.
// derived from SO Post above function getIP(app) { app.use((req, res, next) => { const ip1 = req.headers['x-forwarded-for']; const ip2 = req.socket.remoteAddress; const ip = ip1 || ip2; // undefined | ::1 console.log(ip1 + ' | ' + ip2); next(); }); }A veces, el orden del middleware parece afectar las cosas, y no estoy seguro de si este podría ser el caso aquí.