如何确保客户端IP地址被ngrok转发?
由于 ngrok,我的测试代码一直坚持所有请求都来自 127.0.0.1,但我想记录实际的客户端 IP。负载均衡器通常在 X-Forwarded-For 或 x-real-ip 中设置标头,但我不确定 ngrok 的过程是什么......
console.log('req.headers[\'x-real-ip\']', req.headers['x-real-ip']);
console.log('req.headers[\'X-Forwarded-For\']', req.headers['X-Forwarded-For']);
console.log('req.ip', req.ip );
console.log('req.connection.remoteAddress', req.connection.remoteAddress);
console.log('req.connection.remoteAddress', req.connection.remoteAddress);
console.log('req.socket.remoteAddress', (req.socket && req.socket.remoteAddress));
console.log('req.socket.socket.remoteAddress', (req.socket.socket && req.socket.socket.remoteAddress));
一切都打印undefined
or 127.0.0.1
迄今为止。我认为这意味着我需要以某种方式配置 ngrok。
不幸的是,Node.JS 中的所有标头名称都是小写的。使用
req.headers['x-forwarded-for']
代替
req.headers['X-Forwarded-For']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)