IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NodeJS Discussion :

Récupération adresse IP d'un client sous un réseau local


Sujet :

NodeJS

  1. #1
    Membre à l'essai
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Décembre 2013
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage

    Informations forums :
    Inscription : Décembre 2013
    Messages : 17
    Points : 19
    Points
    19
    Par défaut Récupération adresse IP d'un client sous un réseau local
    bonjour,
    je suis à la recherche d"une méthode qui me permet de récupérer l'adresse IP d'un client de mon serveur node.js situé au sein d'un réseau local.
    en cherchant sur le net j'ai trouvé des fonctions qui semblent spécifiques à l'utilisation d'un proxi
    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    function getClientIp(req) {
      var ipAddress;
      // The request may be forwarded from local web server.
      var forwardedIpsStr = req.headers('x-forwarded-for'); 
      if (forwardedIpsStr) {
        // 'x-forwarded-for' header may return multiple IP addresses in
        // the format: "client IP, proxy 1 IP, proxy 2 IP" so take the
        // the first one
        var forwardedIps = forwardedIpsStr.split(',');
        ipAddress = forwardedIps[0];
      }
      if (!ipAddress) {
        // If request was not forwarded
        ipAddress = req.connection.remoteAddress;
      }
      return ipAddress;
    lorsque j'utilise ce code j'ai le message suivant:
    michel@Salon:~/Web$ nodejs ./essais\ nodes.js
    serveur HTTP démarré sur le port 3000
    /home/michel/Web/essais nodes.js:8
    var forwardedIpsStr = req.headers('x-forwarded-for');
    ^

    TypeError: req.headers is not a function
    at getClientIp (/home/michel/Web/essais nodes.js:8:29)
    at Server.<anonymous> (/home/michel/Web/essais nodes.js:31:13)
    at emitTwo (events.js:87:13)
    at Server.emit (events.js:172:7)
    at HTTPParser.parserOnIncoming [as onIncoming] (_http_server.js:537:12)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:97:23)
    michel@Salon:~/Web$
    Auriez vous une piste ?
    Par avance merci

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 093
    Points : 6 754
    Points
    6 754
    Par défaut
    Manifestement la fonction getClientIp ne reçoit pas de paramètre req, ou un paramètre de type incorrect. Tu devrais regarder l’endroit où elle est appelée, dans cette fonction anonyme à la ligne 31.

    Dans tous les cas, je pense que tu n’iras pas loin avec cette technique car, comme tu en as eu l’intuition, elle ne marche que si la requête est passée par un proxy.

    J’ai fait une recherche très rapide et j’ai trouvé quelques trucs :


    À toi de voir lequel correspond le mieux à tes besoins
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

Discussions similaires

  1. Réponses: 0
    Dernier message: 05/10/2017, 16h26
  2. Réponses: 3
    Dernier message: 30/10/2008, 14h30
  3. Récupération de l'adresse IP du poste client
    Par isagarran dans le forum Apache
    Réponses: 1
    Dernier message: 07/07/2008, 10h45
  4. Réponses: 4
    Dernier message: 14/08/2007, 10h31
  5. Envoi de mail sous un réseau local
    Par kmaniche dans le forum C++Builder
    Réponses: 1
    Dernier message: 31/10/2006, 19h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo