如何在socket.io中获取客户端IP地址
问题描述:
您好我有socket.io版本1.3.7中获取客户端IP地址之前更新其完美的工作,但更新后我得到每次未定义这是我的代码是我更新如何在socket.io中获取客户端IP地址
之前使用,这是我的服务器端
sockets.on('connection',function(sock){
var address = sock.handshake.address;
这个代码从客户端更新后,发送IP地址
var remote = 'http://my_ip_address:9008/';
socket = io.connect(!!local ? local : remote);
socket.on("connect", function() {
console.log("connected");
getData();
});
它不是在socket.io版本1.3.7使工作p租赁帮助我解决这个问题,并建议完美的代码为1.3.7版本
答
我没有太多的插座,但我想这会帮助你。
您需要使用address.address
和端口address.port
sockets.on('connection',function(sock){
var address = sock.handshake.address;
console.log('New connection from ' + address.address + ':' + address.port);
});
而对于Socket.io版本1.0 服务器端:
sockets.on('connection',function(sock){
var clientIpAddress = sock.request.headers['x-forwarded-for'] || sock.request.connection.remoteAddress;
console.log(' new request from : '+clientIpAddress);
});
+0
非常感谢 - 花费太多时间搜索服务器端解决方案 – user1274820
'sock.handshake.address '应该是客户端的IP地址。它适用于socket.io 1.4.5。它可能会以IPv6格式显示,具体取决于您的系统配置。 – jfriend00
身份证有新的版本的socket.io客户端连接的任何变化,我的客户端连接套接字的代码是完美的或不,如果你有任何想法,所以请告诉我,我不能得到IP地址 –
从服务器,这里是你如何检索各种IP地址的东西:http://stackoverflow.com/questions/38423930/how-to-retrieve-client-and-server-ip-address-and-port-number-in-node-js/ 38426473?noredirect = 1#comment64286103_38426473 – jfriend00