Действительно ли JavaScript может получить доступ к файловой системе? [дубликат]

1752 год был годом перехода Британии с юлианского на григорианский календарь. Я полагаю, что две недели в сентябре 1752 года никогда не происходили в результате, что имеет значение для дат в этой общей области.

Объяснение: http://uneasysilence.com/archive/2007/08/12008/ ( Версия интернет-архива )

37
задан Joe 6 July 2009 в 14:21
поделиться

4 ответа

В Tiddlywiki есть несколько методов сохранения данных в зависимости от того, какой браузер используется. Как вы могли видеть в исходном коде .

  • Если ActiveX включен, он использует Scripting.FileSystemObject.
  • В браузерах на основе Gecko он пытается использовать UniversalXPConnect.
  • Если Java включена , он использует Java-апплет TiddlySaver.
  • Если Java LiveConnect включен, он пытается использовать классы файлов Java.
46
ответ дан 27 November 2019 в 04:14
поделиться

Ответ действительно НЕТ. Java-апплеты,

2
ответ дан 27 November 2019 в 04:14
поделиться

Он использует ссылки на файлы java, например:

drivers.tiddlySaver = {
        name: "tiddlySaver",
        deferredInit: function() {
            if(!document.applets["TiddlySaver"] && !$.browser.mozilla && !$.browser.msie && document.location.toString().substr(0,5) == "file:") {
                $(document.body).append("<applet style='position:absolute;left:-1px' name='TiddlySaver' code='TiddlySaver.class' archive='TiddlySaver.jar' width='1'height='1'></applet>");
            }
        },
        isAvailable: function() {
            return !!document.applets["TiddlySaver"];
        },
        loadFile: function(filePath) {
            var r;
            try {
                if(document.applets["TiddlySaver"]) {
                    r = document.applets["TiddlySaver"].loadFile(javaUrlToFilename(filePath),"UTF-8");
                    return (r === undefined || r === null) ? null : String(r);
                }
            } catch(ex) {
            }
            return null;
        },
        saveFile: function(filePath,content) {
            try {
                if(document.applets["TiddlySaver"])
                    return document.applets["TiddlySaver"].saveFile(javaUrlToFilename(filePath),"UTF-8",content);
            } catch(ex) {
            }
            return null;
        }
    }
12
ответ дан 27 November 2019 в 04:14
поделиться

Technically you can do

netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserWrite');

in a netscape-compatible browser (Firefox, Mozilla, Netscape), and it will ask the user* whether or not to allow filesystem access, but this is not portable.

*once per browser process

4
ответ дан 27 November 2019 в 04:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: