有没有办法用Javascript读取系统(Linux,Windows,OS / X等)卷?
我不需要设置它,只需阅读它吗?
感谢
答案 0 :(得分:11)
我假设你在浏览器环境中谈论Javascript。在这种情况下,答案很明确,简短而简单:否。
Clientside Javascript 不支持文件IO 操作。
但是,在某些浏览器中,您可以通过设置特定于浏览器的选项来违反该规则。例如,使用命令行参数 - disable-web-security 调用基于Webkit的浏览器允许浏览器读取类似file:///c/somefolder/
的uri。 Mozilla通过编辑用户ini 以及 about:config 中的设置来提供这种可能性。
<强>更新强>
我认为deceze的评论是正确的,你的意思是“音量”。在这种情况下,你可以忘记上面的文字,但答案是没有。没有本地Javascript接口来获取和/或设置那种操作系统设置。
答案 1 :(得分:5)
回顾@ jAndy的回答:浏览器环境的重点是你不能这样做。如果您浏览网站,您是否会信任浏览器,并且浏览器允许网站(通过其JavaScript)收集有关您计算机的信息,然后发送给可能意味着您受到伤害的人?
所以,答案“不”不仅是正确的,它是“必须的”,以便浏览器做更多的事情而不是微不足道的事情。浏览器(不是JavaScript,但不是射击信使)是故意设计的,所以你问题的答案是否定的。
现在,JavaScript作为一种语言并不能阻止你这样做。浏览器不允许您访问(通过称为“沙盒”的过程),而不是JavaScript。
IE允许用户安装可以拥有系统完全权限的ActiveX控件。在这种情况下,JavaScript可以轻松地创建一个ActiveX对象,然后根据对ActiveX控件的权限,对您的计算机执行任何他们喜欢的操作(包括FORMAT C :)。
因此,IE允许网站在客户端计算机上下载和安装ActiveX控件,有时具有完全访问权限,从而带来巨大的安全风险。同样,JavaScript只是这里的信使,而不是罪魁祸首。
我不建议您编写一个ActiveX控件,将其下载到客户端的计算机,然后访问其计算机上的信息。我们有这样的程序(特洛伊木马/病毒/恶意软件)的名称,以及此类行为的名称(非法黑客攻击)。
所以,尽管我相信您只想阅读客户端计算机的信息(而不是以任何方式控制它),但请高兴浏览器(正确的浏览器)旨在阻止您这样做。