Nodejs ip地址结果:: 1

时间:2017-02-14 07:20:20

标签: node.js ip-address clientip

我有一个非常有趣的问题。我有一个网站,我想获得客户端IP地址。我找到了一些解决方案,但没有一个能起作用。我正在使用nginx。

我正在使用expressjs

app.post("/api/test",(req, res)=>{
console.log(req.header('x-forwarded-for')) // result "::1"
console.log(req.connection.remoteAddress) // result "::1"
console.log(req.ip) // result "::1"
})

我尝试使用3方freamwork但结果相同。

1 个答案:

答案 0 :(得分:4)

如果您正在使用localhost,这是正常的尝试在服务器上记录此项,您将获得该用户的地址。

或者您可能在节点服务器前面运行nginx或类似的反向代理,在这种情况下,您应该设置正确的标头

对于nginx你需要这个

proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

检查here了解更多信息