我不完全了解如何获取远程用户IP地址。
假设我有一个简单的请求路由,例如:
app.get(/, function (req, res){ var forwardedIpsStr = req.header('x-forwarded-for'); var IP = ''; if (forwardedIpsStr) { IP = forwardedIps = forwardedIpsStr.split(',')[0]; } });
以上方法是正确的以获得真实用户IP地址还是有更好的方法?代理呢?
如果您是在像NGiNX这样的代理服务器上运行或者只有什么,那么您应该检查’x-forwarded-for’:
var ip = req.headers['x-forwarded-for'] || req.connection.remoteAddress;
如果代理不是“您的”,那么我将不信任“ x-forward-for”标头,因为它可能是被欺骗的。