InetAddress addr = InetAddress.getLocalHost();
String hostname = addr.getHostName();
项目部署服务器了,地址为http://192.168.74.1:8090/index,张三访问这个地址返回服务器计算机名,王五访问这个地址返回这个服务器计算机名,李四访问这个地址返回服务器计算机名

Java InetAddress类返回不是访问者的计算机名称问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- MarkHan_ 2023-02-23 08:16关注
该回答引用GPTᴼᴾᴱᴺᴬᴵ
在 Java 中,使用 InetAddress.getLocalHost() 方法可以获取当前主机的 IP 地址和主机名。所以,当每个用户访问 http://192.168.74.1:8090/index 时,使用这段 Java 代码获取主机名会得到相同的结果,即部署该项目的服务器的计算机名。因此,张三、王五和李四访问 http://192.168.74.1:8090/index 返回的主机名都相同,即服务器计算机名。这是因为服务器只有一个 IP 地址(在这个例子中是 192.168.74.1),并且所有的请求都通过该 IP 地址进行路由。
如果你需要获取访问者本地电脑的计算机名,你需要使用客户端脚本语言(如 JavaScript)在浏览器中执行相应的脚本代码,获取本地计算机名并在页面中显示。但需要注意的是,这种方式需要浏览器支持执行客户端脚本,并且用户需要授权允许执行该脚本。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报