Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Firefox typeof(window.requestFileSystem) === 'undefined' (https://javascript.ru/forum/misc/70792-firefox-typeof-window-requestfilesystem-%3D%3D%3D-%27undefined%27.html)

someQuestions 03.10.2017 12:47

Firefox typeof(window.requestFileSystem) === 'undefined'
 
Здравствуйте!
Вот такая вот проблема:
использую HTML5 FileAPI
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
if(typeof(window.requestFileSystem) === 'undefined') 
     alert('Not supported!');

всегда говорит что не поддерживается, хотя в документации(https://developer.mozilla.org/ru/doc...ocalFileSystem) написано что всё должно работать(про Non-standard прочитал и понял).
Не подскажете как возможно решить проблему?



P.S.
Проверялось на:
Firefox 55.0.3 (64-bit) Linux
Firefox 56.0 (32-bit) Windows 7
P.S.2
на http://html5test.com/ заходил и видел
FileSystem API No

но при этом instanceOfFileReader.readAs*(https://developer.mozilla.org/ru/doc...API/FileReader) прекрасно работает...

Nexus 03.10.2017 12:51

someQuestions, смотри раздел "Browser compatibility".
https://developer.mozilla.org/ru/doc..._Compatibility

someQuestions 03.10.2017 12:59

Цитата:

Сообщение от Nexus (Сообщение 466375)
someQuestions, смотри раздел "Browser compatibility".
https://developer.mozilla.org/ru/doc..._Compatibility

Странно... а разве вот эти ребята mega(.)nz не что то подобное используют?


P.S. читаю https://github.com/meganz/webclient/.../filesystem.js

someQuestions 03.10.2017 13:13

Цитата:

Сообщение от someQuestions (Сообщение 466376)
Странно... а разве вот эти ребята mega(.)nz не что то подобное используют?


P.S. читаю https://github.com/meganz/webclient/.../filesystem.js

if (window.requestFileSystem) {
...
        }
        else {
            errorHandler2();
}

Что бы не лопатить весь код, можете подсказать как они тогда файл в фф локально сохраняют? С трудом верится что его в блоб(память браузера) полностью загружают...
хотя может быть...
this.download = function(name, path) {
        var file_url = myURL.createObjectURL(file);
        var dlLinkNode = document.getElementById('dllink');
        dlLinkNode.download = name;
        dlLinkNode.href = file_url;
        dlLinkNode.click();
        later(function() {
            myURL.revokeObjectURL(file_url);
            file_url = undefined;
        });
};

Alexandroppolus 03.10.2017 13:31

Цитата:

Сообщение от someQuestions
как они тогда файл в фф локально сохраняют?

подозреваю, что IndexedDB.
Цитата:

Сообщение от someQuestions
хотя может быть...

это "скачивание" файла в папку загрузок. Т.е. обратно прочитать нельзя, например.

someQuestions 03.10.2017 13:52

Цитата:

Сообщение от Alexandroppolus (Сообщение 466383)
подозреваю, что IndexedDB.

это "скачивание" файла в папку загрузок. Т.е. обратно прочитать нельзя, например.

За IndexedDB спасибо!
По поводу прочитать обратно - дак это и ежу понятно, что доступ только к фс в песочнице:)

А не подскажете как с IndexedDB использовать .toURL()? Опять же не загружая весь файл в память браузера...


P.S. https://github.com/ebidel/idb.filesystem.js/ видел, но там весь файл в память загружается...


Часовой пояс GMT +3, время: 21:45.