0
私はExpressのJSとクライアントのIPアドレスを取得しようとしていますが、リモートクライアントのIPアドレスNodeJSを取得し、コードは次のとおりです。、ExpressJs
var ip;
if (req.headers['x-forwarded-for']) {
ip = req.headers['x-forwarded-for'].split(",")[0];
} else if (req.connection && req.connection.remoteAddress) {
ip = req.connection.remoteAddress;
} else {
ip = req.ip;
}
ip = (ip.length < 15 ? ip : (ip.substr(0, 7) === '::ffff:' ? ip.substr(7) : undefined));
console.log('ip address',ip);
しかし、毎回私が取得していますローカルホストのIPアドレスではないパブリックIPアドレス 、 どうすればlocalhostのIPアドレスの代わりにパブリックIPアドレスを取得できますか? 誰でも私を助けてくれますか?
ありがとうございます。
チェックサーバインフラストラクチャは、ロードバランサ、プロキシ、などを持っています...あなたの実際のサーバの前で、上記のローカル値は、クライアントが最初に接続した実際のパブリックIP /ポートではなく、ローカルサーバを返します。 –