Javascript: Можете ли вы прочитать системный том? - PullRequest
11 голосов
/ 20 марта 2011

Есть ли способ прочитать том системы (Linux, Windows, OS / X и т. Д.) С помощью Javascript?

Мне не нужно его устанавливать, просто прочитайте?

спасибо

Ответы [ 2 ]

12 голосов
/ 20 марта 2011

Я предполагаю, что вы говорите о Javascript в среде браузера.В этом случае ответ ясен, краток и прост: Нет .

Клиентский JavaScript не поддерживает операции File IO .


Однако в некоторых браузерах вы можете нарушить это правило, установив специальные параметры браузера.Например, вызов браузера на основе Webkit с аргументом командной строки - disable-web-security позволяет браузеру читать uri, например file:///c/somefolder/.Mozilla предлагает такую ​​возможность, отредактировав пользователь ini плюс настройку в about: config .


Обновление

Я думаю, комментарий Десезе верен, и вы действительно имеете в виду «громкость звука».В этом случае вы можете забыть о вышеприведенном тексте, но ответ снова: нет .Нет собственного интерфейса Javascript для получения и / или установки таких настроек ОС.

5 голосов
/ 20 марта 2011

Просто вернемся к ответу @ jAndy: весь смысл среды браузера заключается в том, что вы не можете сделать это.Доверяете ли вы браузеру, если заходите на веб-сайт, и он позволяет веб-сайту (с помощью JavaScript) собирать информацию о вашем компьютере, а затем отправлять кому-то, кто может означать, что вы вредите?

Итак,Ответ «НЕТ» не только правильный, но и «ДОЛЖЕН», чтобы браузеры могли делать что-то большее, чем просто тривиальное.Браузеры (но не JavaScript - не стреляйте в мессенджер) специально разработаны таким образом, чтобы ответить на ваш вопрос «НЕТ».

Теперь, JavaScript как язык действительно не мешает вам делать это.Браузер запрещает ваш доступ (через процесс, называемый «песочницей»), а не JavaScript.

А как насчет элементов управления IE и ActiveX?

IE позволяет пользователям устанавливать элементы управления ActiveX, которые может имеют полные права на систему.В этом случае JavaScript может легко создать объект ActiveX и затем делать все, что угодно, на вашем компьютере (включая FORMAT C :), в зависимости от прав, предоставленных элементу управления ActiveX.

Итак, IE представляет огромные угрозы безопасностипозволяя веб-сайтам загружать и устанавливать элементы управления ActiveX на клиентском компьютере, иногда с полными правами доступа.Опять же, JavaScript - это всего лишь мессенджер, а не виновник.

После примечания

Я НЕ предлагаю вам написать элемент управления ActiveX, который будет загружаться на компьютер клиента, чтобы вы затем могли получить доступинформация на своем компьютере.У нас есть название для таких программ (троянский конь / вирус / вредоносное ПО) и название для таких действий (незаконный взлом).

Итак, хотя я верю, что вы хотите только прочитать информацию о клиентском компьютере (неконтролировать это каким-либо образом), пожалуйста, будьте рады, что браузеры (правильные) предназначены для того, чтобы помешать вам сделать это.

...