如何在节点js中获取客户端计算机名称

时间:2017-02-10 04:23:49

标签: javascript node.js express

任何人都可以帮我获取我的网站身份验证的客户端机器名/主机名。它在我的公司域内部运行。 我尝试了以下代码,但获得了服务器主机名而不是客户端。

var os = require("os");
var hostaddress = os.hostname();

我知道使用以下代码获取客户端IP地址的方法

req.connection.remoteAddress

由于IP地址将在互联网连接的变化中发生变化。我想用计算机名称进行验证。请帮助我获取客户端登录我网站的计算机名称。

3 个答案:

答案 0 :(得分:0)

function getClientAddress(req) {
  return req.headers['x-forwarded-for'] || req.connection.remoteAddress;
}

这会有效!!

答案 1 :(得分:0)

那么,我如何获得客户端的主机名?

  request.headers.host

希望这也适合你。

答案 2 :(得分:0)

NodeJS DNS Reverse Lookup将发挥作用。这是唯一的方法。查看此链接以获取更多信息:)

https://nodejs.org/docs/v0.3.1/api/all.html#dns.reverse

请尝试以下代码

require('dns').reverse(req.connection.remoteAddress', function(err, domains) {

    console.log(domains);
});