如何使用Sockets.io + Node.js服务器获取客户端IPv4地址(而非IPv6)
我想要获取使用Socket.io版本1.3.5连接我的Node.js服务器的客户端的IPv4 IP地址。
我尝试了大多数在SO中build议的方式,但大部分都是或不赞成,或者他们返回一个IPv6地址。
唯一返回一些价值的是
socket.request.connection.remoteAddress
但它是IPv6格式。
任何获得IPv4地址的方法?
如果客户端使用IPv6连接,则无法获得IPv4地址。 如果您想拥有IPv4地址,则需要closures服务器上的IPv6支持。
比我用这个来获取IP地址var ip = socket.client.request.headers['x-forwarded-for'] || socket.client.conn.remoteAddress || socket.conn.remoteAddress || socket.request.connection.remoteAddress;
var ip = socket.client.request.headers['x-forwarded-for'] || socket.client.conn.remoteAddress || socket.conn.remoteAddress || socket.request.connection.remoteAddress;