JavaScript中的MAC地址

inisi 发布于 2018-02-27 javascript 最后更新 2018-02-27 01:05 639 浏览

我知道我们可以通过IE(ActiveX对象)获取用户的MAC地址。 有没有办法使用JavaScript获取用户的MAC地址?

已邀请:

ysequi

赞同来自:

快速和简单的答案是否定的。 Javascript是一种相当高级的语言,无法访问这类信息。

wanimi

赞同来自:

如果这用于Intranet应用程序,并且所有客户端都使用DHCP,则可以向DHCP服务器查询给定IP地址的MAC地址。

yvitae

赞同来自:

不。 ActiveX可以这样做的原因是因为ActiveX是一个在客户端机器上运行的小应用程序。 我想通过JavaScript访问这些信息将是一个安全漏洞。

xesse

赞同来自:

否,您无法在JavaScript中获取MAC地址,主要是因为MAC地址唯一标识了正在运行的计算机,所以这会成为安全漏洞。 现在,如果您只需要一个唯一的标识符,我建议您使用一些加密算法自己创建一个,并将其存储在cookie中。 如果您确实需要知道计算机的MAC地址,并且您正在开发内部应用程序,那么我建议您使用外部组件来执行此操作:用于IE的ActiveX,用于Firefox的XPCOM(作为扩展安装)。

et_et

赞同来自:

我同意所有以前的答案,如果你能直接从Javascript做到这一点,那么这将是一个隐私/安全漏洞。有两件事我可以想到:

  • 使用Java(带有签名的小程序)
  • 使用FF(通常是Mozilla)的签名Javascript比普通JS获得更高的权限(但设置起来相当复杂)

funde

赞同来自:

您无法访问MAC address,但您可以获取用户的IP address

<script type="application/javascript">
    function getip(json){
      alert(json.ip);    // alerts the ip address
    }
</script>
<script type="application/javascript" src="http://jsonip.appspot.com/?callback=getip">
</script>
参考:(请参阅here)。