一尘不染

在Node.js中获取客户端主机名

node.js

是否可以在Node.js中获取 主机名

这是我获取客户IP的方式:

var ip = request.header('x-forwarded-for');

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

var hostname = request.header('???');

谢谢您的回复!


阅读 782

收藏
2020-07-07

共1个答案

一尘不染

我认为唯一的方法是这样的:

<form method="post" action="/gethostname">
    <label for="hostname">What is your hostname?</label>
    <input type="text" name="hostname" id="hostname">
</form>

但我建议您实际上并不需要它,这并不是您可以对信息做任何有用的事情。如果您只想让字符串标识用户的计算机,则可以进行一些处理。

如果您真正想要的是FQDN,那么我建议它仍然对您没有太大帮助,但为此您需要反向DNS查找。如果您使用的是VPS或类似产品,则可以配置您的盒子来为您执行此操作,但是请注意,这可能需要花费几秒钟的时间,因此将其作为响应的一部分不是一个好主意。另请注意,在大多数情况下,您将不会获得用户计算机的FQDN,而会得到其路由器的FQDN。

2020-07-07