Описание
Используйте API chrome.fileSystem
для создания, чтения, навигации и записи в локальную файловую систему пользователя. С помощью этого API приложения Chrome могут читать и записывать данные в выбранное пользователем место. Например, приложение текстового редактора может использовать API для чтения и записи локальных документов. Обо всех сбоях сообщается через chrome.runtime.lastError.
Разрешения
fileSystem
Доступность
Типы
AcceptOption
Характеристики
- описание
строка необязательна
Это необязательное текстовое описание для этой опции. Если его нет, описание будет создано автоматически; обычно содержит расширенный список допустимых расширений (например, «text/html» может расширяться до «*.html, *.htm»).
- расширения
строка[] необязательно
Принимаемые расширения, например «jpg», «gif», «crx».
- mime-типы
строка[] необязательно
Принимаемые Mime-типы, например «image/jpeg» или «audio/*». Один из mimeTypes или расширений должен содержать хотя бы один допустимый элемент.
ChooseEntryOptions
Характеристики
- принимает
AcceptOption [] необязательно
Необязательный список параметров принятия для этого средства открытия файлов. Каждый вариант будет представлен конечному пользователю как уникальная группа.
- принимает все типы
логическое значение необязательно
Принимать ли все типы файлов в дополнение к параметрам, указанным в аргументе Accepts. По умолчанию это правда. Если поле Accepts не установлено или не содержит допустимых записей, оно всегда будет сброшено до значения true.
- принимаетНесколько
логическое значение необязательно
Принимать ли несколько файлов. Это поддерживается только для openFile и openWritableFile. Обратный вызов ChooseEntry будет вызван со списком записей, если для этого параметра установлено значение true. В противном случае он будет вызываться с одной записью.
- предложенное имя
строка необязательна
Предлагаемое имя файла, которое будет представлено пользователю как имя по умолчанию для чтения или записи. Это необязательно.
- тип
ВыберитеEntryType необязательно
Тип отображаемого приглашения. По умолчанию используется «openFile».
ChooseEntryType
Перечисление
"открытый файл" "открытьWritableFile" "сохранить файл" "открытый каталог"
Предлагает пользователю открыть существующий файл и возвращает FileEntry в случае успеха. Начиная с Chrome 31, FileEntry будет доступен для записи, если приложение имеет разрешение на запись в разделе «fileSystem»; в противном случае FileEntry будет доступен только для чтения.
Предлагает пользователю открыть существующий файл и в случае успеха возвращает доступный для записи FileEntry. Вызовы, использующие этот тип, завершатся ошибкой во время выполнения, если у приложения нет разрешения на запись в разделе «fileSystem».
Предлагает пользователю открыть существующий файл или новый файл и в случае успеха возвращает доступный для записи FileEntry. Вызовы, использующие этот тип, завершатся ошибкой во время выполнения, если у приложения нет разрешения на запись в разделе «fileSystem».
Предлагает пользователю открыть каталог и возвращает DirectoryEntry в случае успеха. Вызовы с использованием этого типа завершится ошибкой во время выполнения, если у приложения нет разрешения «каталог» в «файловой системе». Если приложение имеет разрешение «запись» в разделе «fileSystem», возвращаемый элемент DirectoryEntry будет доступен для записи; в противном случае он будет доступен только для чтения. Новое в Chrome 31.
RequestFileSystemOptions
Характеристики
- идентификатор тома
нить
Идентификатор запрошенного тома.
- записываемый
логическое значение необязательно
Должна ли запрошенная файловая система быть доступна для записи. По умолчанию доступно только для чтения.
Volume
Характеристики
- идентификатор тома
нить
- записываемый
логическое значение
VolumeListChangedEvent
Характеристики
- объемы
Объем []
Методы
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
)
Попросите пользователя выбрать файл или каталог.
Параметры
- параметры
Выберите EntryOptions необязательно.
- перезвонить
функция
Параметр
callback
выглядит так:(entry?: Entry, fileEntries?: FileEntry[]) => void
- вход
Вход необязательный
- fileEntries
FileEntry[] необязательно
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
)
Получите путь отображения объекта Entry. Путь отображения основан на полном пути к файлу или каталогу в локальной файловой системе, но его можно сделать более читаемым для целей отображения.
Параметры
- вход
Вход
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(displayPath: string) => void
- DisplayPath
нить
Возврат
Обещание<строка>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
)
Возвращает список томов, доступных для requestFileSystem()
. Требуется разрешение манифеста "fileSystem": {"requestFileSystem"}
. Доступно только для киоск-приложений, работающих только в сеансе киоска. В случае ошибки volumes
будут неопределенными и будет установлен chrome.runtime.lastError
.
Параметры
Возврат
Обещание< Том [] | не определено>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getWritableEntry()
chrome.fileSystem.getWritableEntry(
entry: Entry,
callback: function,
)
Получить доступную для записи запись из другой записи. Этот вызов завершится ошибкой времени выполнения, если у приложения нет разрешения на запись в файловой системе. Если запись является DirectoryEntry, этот вызов завершится ошибкой, если приложение не имеет разрешения «каталог» в «файловой системе».
Параметры
- вход
Вход
- перезвонить
функция
Параметр
callback
выглядит так:(entry: Entry) => void
- вход
Вход
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
)
Возвращает, имеет ли приложение разрешение на восстановление записи с данным идентификатором.
Параметры
- идентификатор
нить
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(isRestorable: boolean) => void
- isRestoreable
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
)
Получает информацию о том, доступна ли эта запись для записи.
Параметры
- вход
Вход
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(isWritable: boolean) => void
- isWritable
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
)
Запрашивает доступ к файловой системе для тома, представленного options.volumeId
. Если для options.writable
установлено значение true, файловая система будет доступна для записи. В противном случае он будет доступен только для чтения. Для опции writable
требуется разрешение "fileSystem": {"write"}
в манифесте. Доступно только для киоск-приложений, работающих только в сеансе киоска. В режиме киоска с ручным запуском диалоговое окно подтверждения будет отображаться в верхней части активного окна приложения. В случае ошибки fileSystem
будет неопределена и будет установлен chrome.runtime.lastError
.
Параметры
- параметры
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(fileSystem?: FileSystem) => void
- файловая система
Файловая система необязательно
Возврат
Обещание<Файловая система | не определено>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
restoreEntry()
chrome.fileSystem.restoreEntry(
id: string,
callback: function,
)
Возвращает запись файла с заданным идентификатором, если ее можно восстановить. В противном случае этот вызов завершится ошибкой во время выполнения.
Параметры
- идентификатор
нить
- перезвонить
функция
Параметр
callback
выглядит так:(entry: Entry) => void
- вход
Вход
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
)
Возвращает идентификатор, который можно передать в restreEntry для восстановления доступа к данной записи файла. Сохраняются только 500 последних использованных записей, при этом вызовы continueEntry иrestoreEntry считаются использованными. Если у приложения есть разрешение «retainEntries» в разделе «fileSystem», записи сохраняются на неопределенный срок. В противном случае записи сохраняются только во время работы приложения и после его перезапуска.
Параметры
- вход
Вход
Возврат
нить
События
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
Вызывается при изменении списка доступных томов.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(event: VolumeListChangedEvent) => void
- событие