Хранилище файлов

Хранилище файлов.

Файлы — это единицы информации, которые пользователи могут с легкостью пересылать друг другу. Невозможно передать другому пользователю значение переменной, однако не составляет труда сделать копию любого файла и записать его на DVD-, флеш — или жесткий диск, отправить по Интернету и т.п. В файле можно сохранить огромный объем данных, но при этом перемещение, копирование и передача файла никак не зависят от природы его содержимого.

Файлы всегда были неотъемлемой составляющей любого приложения, однако до сих пор работать с ними в Сети было почти невозможно. Варианты использования ограничивались копированием на пользовательский компьютер или загрузкой на сервер уже существующих файлов. До появления спецификации HTML5 не существовало способов создания, копирования или иной обработки файлов в Сети.

Спецификация HTML5 разрабатывалась с учетом всех аспектов построения и взаимодействия веб-приложений. Ее создатели позаботились обо всем, начиная с элементарной структуры данных. И разумеется, они не могли обойти вниманием файлы. Таким образом, частью глобальной спецификации стал файловый API, или API File.

У файлового API довольно много общего с API хранилищ, которые мы изучали в предыдущих главах. Например, файловый API, как и IndexedDB, характеризуется низкоуровневой инфраструктурой, хотя и не такой сложной, и может работать в синхронном или асинхронном режиме. Синхронная часть предназначена для использования с API рабочих процессов (Web Workers) — так же, как синхронная составляющая IndexedDB и других API, а асинхронная часть применяется в обычных веб-приложениях. Это означает, что нам придется заботиться обо всех аспектах процесса, проверять успешность завершения процесса и возможные ошибки и, вероятно, принимать на вооружение (или самостоятельно разрабатывать) более простые API, которые наверняка появятся в скором будущем.

Файловый API довольно стар, но он претерпел значительные изменения и улучшения. В настоящий момент он состоит как минимум из трех отдельных спецификаций: API File (Файл), API File: Directories & System (Каталоги и система) и API File: Writer (Запись файлов), — однако ситуация может измениться буквально в течение нескольких месяцев, если появятся новые спецификации или произойдет унификация существующих. По сути, API File позволяет нам взаимодействовать с локальными файлами и обрабатывать их содержимое из приложения; расширение API File: Directories & System предоставляет инструменты для работы с небольшой файловой системой, создаваемой специально для каждого приложения, а расширение API File: Writer предназначается для записи содержимого в файлы, создаваемые или загруженные приложением.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *