Chaque req y res qui sont fournis à la fonction d'écoute des requêtes, ils ont un objet prise de courant propriété. Ainsi, req.socket.remoteAddress contient l'adresse IP du client qui fait la demande.(express)
J'ajouterai aussi mon chemin pour toute personne intéressée.
J'obtiens l'adresse distante : `
app.use(function(req, res, next) {
const rAddress = req.socket.remoteAddress;
....
}
Et voici l'adresse distante à partir de laquelle j'ai appelé le service : ::ffff:127.0.0.1
Afin d'obtenir seulement le IP je coupe la chaîne comme ça : req.socket.remoteAddress.slice(7))
Basé sur la doc. Mozilla, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice j'obtiens une nouvelle chaîne qui commence à partir du numéro d'index 7 jusqu'à la fin de la chaîne.
41 votes
Si vous utilisez Express, vous pouvez utiliser
req.ip
source - expressjs.com/fr/api.html#req.ip0 votes
Essayez ça : github.com/indutny/node-ip
51 votes
Pour ceux qui travaillent à partir de
localhost
- comme je l'ai fait, le résultat pour toutes les réponses ci-dessous (presque toutes les réponses fonctionnent) pourrait venir::1
. Cela m'a rendu confus pendant un certain temps. J'ai découvert plus tard que::1
est l'adresse IP réelle et estIPV6
pour localhost.Hope this helps someone