0
ユーザーのIPを取得する方法を知りたい場合は、サーバーn socket.ioに接続します。私はこのような接続アドレスとポートを記録することになっているこのコードを使用して試してみました: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または時には単に::と表示されます。何が起きているのかわかりません。 – McMatt
@McMatt - socket.ioのどこにポートがあるのかわかりません。入ってくるポートは、あなたのサーバーが何を聞いているのかは明らかです。あなたがIPアドレスのために見ているのはおそらくlocalhostのためのIPv6形式です。ローカルホストではなく外部IPから接続するときに試してください。 – jfriend00
@McMatt - IPv4からIPv6のアドレス形式に関するいくつかの情報があります:[ハイブリッドIP記法:: ffff:192.168.1.4はいつ適切でしょうか?](http://stackoverflow.com/questions/5861107/when-is-the -hybrid-ip-notation-ffff192-168-1-4-appropriate)を使用します。 – jfriend00