2013-11-28 193 views
1

如何从HTTP请求url或运行我的节点代码的客户端IP获取IP地址。从请求url获取IP地址

http://127.0.0.1:1000/samp/ 

客户端IP可以是nginx IP或公共IP。任何对此的帮助将会非常有帮助。
谢谢。

+0

你到目前为止尝试过什么?看看这些问题[我如何使用Node.js获取用户的IP地址](http://stackoverflow.com/questions/8107856/how-can-i-get-the-users-ip-address-using -node-js),[Node.js:获取客户端IP](http://stackoverflow.com/questions/19266329/node-js-get-clients-ip) –

+0

一秒钟,你想**客户端IP * *,或**当前机器IP **? –

+0

ping域名你会看到它的IP – meda

回答

0

试试这个

app.get('/', function(req, res) { 
     res.send(req.connection.remoteAddress); 
    }); 
2

假设你想要的客户 IP,你首先需要决定是否信任“X - 转发,对于”头文件(即:你身后反向代理你自己设立的,你信任的,或者你相信代理人)。

如果是这样,那么得到ip在req.headers['x-forwaded-for'](这可能是一个列表)。

如果不是,则req.connection.remoteAddress就是答案。

+0

我正在使用连接。我试过req.ip这是返回我输出undefined – user87267867

+0

req.ip只是表达。使用我上面写的。 –

+0

如果我的代码运行在反向代理之后,如何获得nginx ip? – user87267867