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