使用nodejs检索客户端计算机用户名

时间:2017-09-15 12:42:18

标签: node.js server client-server username

任何人都可以告诉我如何通过nodejs检索客户端计算机用户名。 我写了一个nodejs程序......

//logging the socket address
function start(httpserver) {

var sockets = {};

var io = socketio(httpserver);



io.on('connection', function (socket) {


        });

//receiving message
socket.on('user message', function (msg) {
    console.log('message: ' + msg);


});

//disconnection
socket.on('disconnect', function (msg) {

});

socket.on('foo', function (msg) {
    console.log('received foo:'+msg);
});



});


}

当我启动nodejs服务器时,它会选择index.html并连接到端口8888.同样,我可以从客户端计算机连接。例如:HOSTNAME:8888

但我如何检索客户端计算机用户名

1 个答案:

答案 0 :(得分:0)

反向DNS解析(rDNS)将起到作用。

正在查询域名系统(DNS)以确定与IP地址关联的域名 - 与域名中IP地址的常规“转发”DNS查询相反。

const clientIp = 'xxx.xxx.xxx.xxx';

require('dns').reverse(clientIp, function(err, domains) {

    console.log(domains);
});

参考:

要使用socketio获取客户端ip,您可以参考以下存根:

socketio.on("connection", function (socket) {
   const clientIp = socket.request.connection.remoteAddress;
   // Do the reverse DNS lookup
});