浏览器无法获取硬件信息的原因
尽管 JavaScript 在网页开发中功能强大,但它却有一个明显的限制:无法获取用户电脑的硬件信息。这种限制与安全考虑密切相关。
信任问题
当您安装计算机软件时,您本质上是信任该软件。您授权其在受控环境中运行并访问必要的信息。浏览器却存在显着差异。
立即学习“Java免费学习笔记(深入)”;
浏览器充当连接到不同网站的窗口,无法代表您信任所有这些网站。同样,它也无法承担因不安全的网站行为而造成的潜在损失。
IE 的教训
曾经,Internet Explorer 的 ActiveX 控件几乎拥有操作系统的所有权限。尽管 IE 设置了限制,但这些限制相对宽松。许多银行使用 ActiveX 控件进行在线网银业务,要求用户手动启用这些控件。
虽然这对于信誉良好的大公司来说是可行的,但对于不明底细的小网站呢?安全性无法得到保证,一旦出现问题,用户只能将责任归咎于浏览器。
逐步开放有限权限
近年来,JavaScript 标准正在逐步开放对某些 API 的访问权限,重点在于增强 Web 使用。例如,文件系统 API、Web Bluetooth API 和 WebUSB API 提供了有用的功能。
然而,这些权限旨在满足合理的网络需求,而不是应对无关或无理的要求。
变通方法
尽管浏览器限制了硬件信息访问,但并非没有变通方法。您可以使用以下方式来获取所需的信息: