2013-11-28 248 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