我不完全明白我应该如何获取远程用户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.socket.remoteAddress
如果代理不是“你的”,我就不会信任'x-forwarded-for'
标头,因为它可以被欺骗。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)