gpt4 book ai didi

java - 如何在 Web 应用程序中查找客户端系统 MAC 地址

转载 作者:行者123 更新时间:2023-12-02 05:28:43 25 4
gpt4 key购买 nike

我需要找到正在访问我的网站的客户端 MAC 地址。我已经尝试过使用java代码。

try {

Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
while(networkInterfaces.hasMoreElements())
{
NetworkInterface network = networkInterfaces.nextElement();
System.out.println("network : " + network);
byte[] mac = network.getHardwareAddress();
if(mac == null)
{
System.out.println("null mac");
}
else
{
System.out.print("MAC address : ");

StringBuilder sb = new StringBuilder();
for (int i = 0; i < mac.length; i++)
{
sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
}
val = sb.toString();
System.out.println(sb.toString());
break;
}
}
} catch (SocketException e){

e.printStackTrace();

}

但它显示为“network : name:eth0 (eth0)MAC 地址:EC-A8-6B-77-A9-AD” 适用于所有客户端系统。

我该怎么做?

最佳答案

服务器端 Java 代码永远不会返回客户端的 MAC 地址。

为此,您需要在客户端运行代码。例如,在 IE 中,您可以使用 Javascript+ActiveX 来实现。在其他浏览器(包括 IE)中,您可以使用 Java Applet 来执行此操作,但安全限制可能会阻止 Applet 访问包括 MAC 地址在内的系统信息。

关于java - 如何在 Web 应用程序中查找客户端系统 MAC 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25758591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com