如何确保客户端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,要么打印127.0.0.1。这意味着我需要以某种方式配置ngrok。
发布于 2018-07-20 18:47:45
不幸的是,Node.JS中的所有头名称都是小写的。使用
req.headers['x-forwarded-for']而不是
req.headers['X-Forwarded-For']https://stackoverflow.com/questions/37668942
复制相似问题