【问题标题】:Retrieve client computer username using nodejs使用nodejs检索客户端计算机用户名
【发布时间】:2017-09-15 12:42:17
【问题描述】:

谁能告诉我如何通过 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

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

【问题讨论】:

    标签: node.js server client-server


    【解决方案1】:

    反向 DNS 解析 (rDNS) 可以解决问题。

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

    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
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-04
      • 1970-01-01
      • 1970-01-01
      • 2014-01-07
      • 2021-05-03
      • 2018-03-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多