0
我想知道如何在用户连接到服务器时获取IP地址。我已经使用这个代码应该记录连接地址和端口这样的尝试:在socket.io中获取连接的IP地址1.4.5
var io = require('socket.io')(serv, {});
io.sockets.on('connection', function(socket) {
var address = socket.handshake.address;
console.log('New connection from ' + address.address + ':' + address.port);
socket.on('request', function(data) {
console.log('Request Sent')
length = data.length
if (data.request == 'sessionID') {
socket.emit('sendSessionID', {
id: generateSessionID(length)
});
console.log('Sent session ID')
}
if (data.request == 'players') {
}
});
});
那么我该如何获得端口?也打印出的地址为:: ffff:然后ip或有时它只是打印出来:: 1我不知道发生了什么 – McMatt
@McMatt - 我不知道你会在socket.io中找到端口。显然,无论您的服务器在监听哪个端口。您所看到的IP地址可能是本地主机的IPv6表单。尝试从外部IP连接时,而不是本地主机。 – jfriend00
@McMatt - 下面是关于IPv4到IPv6地址格式的一些信息:[什么时候混合IP表示法:ffff:192.168.1.4合适?](http://stackoverflow.com/questions/5861107/when-is-the -hybrid-IP-符号 - ffff192-168-1-4相适应)。 – jfriend00