chrome.fileSystemProvider

Описание

Используйте API chrome.fileSystemProvider для создания файловых систем, доступных из файлового менеджера Chrome OS.

Разрешения

fileSystemProvider

Доступность

Только для ChromeOS

Для использования API поставщика файловой системы необходимо указать разрешение и раздел "fileSystemProvider" в манифесте расширения . Например:

{
  "name": "My extension",
  ...
  "permissions": [
    "fileSystemProvider"
  ],
  ...
  "file_system_provider_capabilities": {
    "configurable": true,
    "watchable": false,
    "multiple_mounts": true,
    "source": "network"
  },
  ...
}

Раздел file_system_provider должен быть объявлен следующим образом:

configurable (логический) - необязательный
Поддерживается ли настройка через onConfigureRequested. По умолчанию: false.
multiple_mounts (логическое значение) - необязательный параметр
Поддерживается ли смонтирование нескольких (более одной) файловых систем. По умолчанию: false.
watchable (логическое значение) - необязательный
Поддерживается ли установка наблюдателей и уведомление об изменениях. По умолчанию: false.
source (перечисление "файл", "устройство" или "сеть") - обязательно
Источник данных для смонтированных файловых систем.

Приложение «Файлы» использует указанную выше информацию для корректного отображения соответствующих элементов пользовательского интерфейса. Например, если configurable установлен в значение true, будет отображен пункт меню для настройки томов. Аналогично, если multiple_mounts установлен в true , приложение «Файлы» позволит добавить более одной точки монтирования из пользовательского интерфейса. Если watchable установлен в false , будет отображена кнопка обновления. Обратите внимание, что по возможности следует добавить поддержку наблюдателей, чтобы изменения в файловой системе отображались немедленно и автоматически.

Обзор

API поставщика файловой системы позволяет расширениям поддерживать виртуальные файловые системы, доступные в файловом менеджере ChromeOS. Примеры использования включают распаковку архивов и доступ к файлам в облачном сервисе, отличном от Google Диска.

Монтирование файловых систем

Предоставление расширений может осуществляться либо путем получения содержимого файловой системы из внешнего источника (например, удаленного сервера или USB-устройства), либо с использованием локального файла (например, архива) в качестве входных данных.

Для создания файловых систем, являющихся обработчиками файлов (источник — "file" ), поставщик должен быть упакованным приложением, поскольку событие onLaunched недоступно для расширений.

Если источником является сеть или устройство, то файловая система должна быть смонтирована при вызове события onMountRequested .

Источник данных файловой системы Точка входа
"file" Доступно только для упакованных приложений.
"device" или "network" onMountRequested

Настройка файловых систем

После монтирования файловые системы можно настроить с помощью события onConfigureRequested . Это особенно полезно для файловых систем, предоставляющих контент по сети, для установки соответствующих учетных данных. Обработка этого события необязательна.

Жизненный цикл

После монтирования предоставленные файловые системы запоминаются Chrome и автоматически перемонтируются после перезагрузки или перезапуска. Таким образом, после монтирования файловой системы расширением, предоставляющим её, она будет оставаться в таком состоянии до тех пор, пока расширение не будет выгружено или не вызовет метод unmount .

Типы

AbortRequestedOptions

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • operationRequestId

    число

    Идентификатор запроса, который необходимо прервать.

  • requestId

    число

    Уникальный идентификатор этого запроса.

Action

Chrome 45+

Характеристики

  • идентификатор

    нить

    Идентификатор действия. Любая строка или CommonActionId для распространенных действий.

  • заголовок

    строка необязательный

    Название действия. В случае обычных действий его можно игнорировать.

AddWatcherRequestedOptions

Характеристики

  • entryPath

    нить

    Путь входа, подлежащий наблюдению.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • рекурсивный

    логический

    Следует ли включать в наблюдение все дочерние записи рекурсивно? Это может быть справедливо только для каталогов.

  • requestId

    число

    Уникальный идентификатор этого запроса.

Change

Характеристики

  • changeType

    Тип изменений, произошедших с записью.

  • cloudFileInfo

    CloudFileInfo ( необязательно)

    Chrome 125+

    Информация, относящаяся к файлу, хранится в облачной файловой системе.

  • entryPath

    нить

    Путь измененной записи.

ChangeType

Тип изменения, обнаруженного в наблюдаемом каталоге.

Перечисление

"ИЗМЕНЕННЫЙ"

"УДАЛЕНО"

CloseFileRequestedOptions

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • openRequestId

    число

    Идентификатор запроса, используемый для открытия файла.

  • requestId

    число

    Уникальный идентификатор этого запроса.

CloudFileInfo

Chrome 125+

Характеристики

  • версияТег

    строка необязательный

    Тег, обозначающий версию файла.

CloudIdentifier

Chrome 117+

Характеристики

  • идентификатор

    нить

    Идентификатор поставщика для данного файла/каталога.

  • providerName

    нить

    Идентификатор поставщика облачного хранилища (например, 'drive.google.com').

CommonActionId

Chrome 45+

Список распространенных действий. "SHARE" используется для обмена файлами с другими пользователями. "SAVE_FOR_OFFLINE" используется для закрепления (сохранения для автономного доступа). "OFFLINE_NOT_NECESSARY" используется для уведомления о том, что файл больше не нужно сохранять для автономного доступа. Используется в методах onGetActionsRequested и onExecuteActionRequested .

Перечисление

"СОХРАНИТЬ ДЛЯ ОФФЛАЙН"

"ОФФЛАЙН НЕ_ОБЯЗАТЕЛЬЕН"

"ДЕЛИТЬСЯ"

ConfigureRequestedOptions

Chrome 44+

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, подлежащей настройке.

  • requestId

    число

    Уникальный идентификатор этого запроса.

CopyEntryRequestedOptions

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • requestId

    число

    Уникальный идентификатор этого запроса.

  • исходный путь

    нить

    Путь к исходному файлу, который необходимо скопировать.

  • targetPath

    нить

    Путь назначения для операции копирования.

CreateDirectoryRequestedOptions

Характеристики

  • directoryPath

    нить

    Путь к создаваемой директории.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • рекурсивный

    логический

    Является ли операция рекурсивной (только для каталогов).

  • requestId

    число

    Уникальный идентификатор этого запроса.

CreateFileRequestedOptions

Характеристики

  • путь к файлу

    нить

    Путь к создаваемому файлу.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • requestId

    число

    Уникальный идентификатор этого запроса.

DeleteEntryRequestedOptions

Характеристики

  • entryPath

    нить

    Путь к записи, которую необходимо удалить.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • рекурсивный

    логический

    Является ли операция рекурсивной (только для каталогов).

  • requestId

    число

    Уникальный идентификатор этого запроса.

EntryMetadata

Характеристики

  • cloudFileInfo

    CloudFileInfo ( необязательно)

    Chrome 125+

    Информация, идентифицирующая конкретный файл в базовой облачной файловой системе. Должна быть предоставлена, если это запрашивается в options и файл хранится в облачном хранилище.

  • cloudIdentifier

    CloudIdentifier ( необязательно)

    Chrome 117+

    Представление этой записи в облачном хранилище. Должен быть указан, если это запрошено в options и файл хранится в облачном хранилище. Для локальных файлов, не хранящихся в облачном хранилище, при запросе следует оставить значение undefined.

  • isDirectory

    логический необязательный

    Возвращает true, если это каталог. Должен быть указан, если это запрошено в options .

  • mimeType

    строка необязательный

    MIME-тип для записи. Всегда необязателен, но должен быть указан, если это требуется в options .

  • modificationTime

    Дата (необязательно)

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

  • имя

    строка необязательный

    Имя этой записи (не полный путь). Не должно содержать '/'. Для корневого каталога оно должно быть пустым. Должно быть указано, если это требуется в options .

  • размер

    число необязательно

    Размер файла в байтах. Необходимо указать, если это требуется в options .

  • миниатюра

    строка необязательный

    Миниатюрное изображение в виде URI данных в формате PNG, JPEG или WEBP, размером не более 32 КБ. Необязательно, но может быть предоставлено только при явном запросе в событии onGetMetadataRequested .

ExecuteActionRequestedOptions

Chrome 45+

Характеристики

  • actionId

    нить

    Идентификатор действия, которое необходимо выполнить.

  • entryPaths

    нить[]

    Chrome 47+

    Набор путей к элементам, которые будут использоваться для выполнения действия.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • requestId

    число

    Уникальный идентификатор этого запроса.

FileSystemInfo

Характеристики

  • отображаемое имя

    нить

    Удобочитаемое имя для файловой системы.

  • fileSystemId

    нить

    Идентификатор файловой системы.

  • открытые файлы

    Список открытых в данный момент файлов.

  • openedFilesLimit

    число

    Максимальное количество файлов, которые можно открыть одновременно. Если 0, то ограничений нет.

  • supportsNotifyTag

    логический необязательный

    Chrome 45+

    Поддерживает ли файловая система поле tag для каталогов наблюдений.

  • наблюдатели
    Chrome 45+

    Список наблюдателей.

  • записываемый

    логический

    Поддерживает ли файловая система операции, которые могут изменять содержимое файловой системы (например, создание, удаление или запись в файлы).

GetActionsRequestedOptions

Chrome 45+

Характеристики

  • entryPaths

    нить[]

    Chrome 47+

    Список путей доступа к элементам списка действий.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • requestId

    число

    Уникальный идентификатор этого запроса.

GetMetadataRequestedOptions

Характеристики

  • cloudFileInfo

    логический

    Chrome 125+

    Установите значение true , если запрашивается значение cloudFileInfo .

  • cloudIdentifier

    логический

    Chrome 117+

    Установите значение true , если запрашивается значение cloudIdentifier .

  • entryPath

    нить

    Путь к записи, для которой необходимо получить метаданные.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • isDirectory

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение is_directory .

  • mimeType

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение mimeType .

  • modificationTime

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение modificationTime .

  • имя

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение name .

  • requestId

    число

    Уникальный идентификатор этого запроса.

  • размер

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение size .

  • миниатюра

    логический

    Установите значение true , если запрашивается значение thumbnail .

MountOptions

Характеристики

  • отображаемое имя

    нить

    Удобочитаемое имя для файловой системы.

  • fileSystemId

    нить

    Строковый идентификатор файловой системы. Должен быть уникальным для каждого расширения.

  • openedFilesLimit

    число необязательно

    Максимальное количество файлов, которые можно открыть одновременно. Если не указано или равно 0, то ограничение отсутствует.

  • настойчивый

    логический необязательный

    Chrome 64+

    Следует ли системе возобновлять работу с файловой системой при следующем входе в систему. По умолчанию — true.

  • supportsNotifyTag

    логический необязательный

    Chrome 45+

    Поддерживает ли файловая система поле tag для наблюдаемых каталогов.

  • записываемый

    логический необязательный

    Поддерживает ли файловая система операции, которые могут изменять содержимое файловой системы (например, создание, удаление или запись в файлы).

MoveEntryRequestedOptions

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • requestId

    число

    Уникальный идентификатор этого запроса.

  • исходный путь

    нить

    Путь к файлу, который необходимо переместить в новое место.

  • targetPath

    нить

    Путь назначения для операции копирования.

NotifyOptions

Характеристики

  • changeType

    Тип изменения, произошедшего с наблюдаемой записью. Если указано DELETED, то наблюдаемая запись будет автоматически удалена из списка наблюдаемых записей.

  • изменения

    Изменить [] необязательно

    Список изменений записей в наблюдаемом каталоге (включая саму запись)

  • fileSystemId

    нить

    Идентификатор файловой системы, к которой относится это изменение.

  • наблюдаемый путь

    нить

    Траектория наблюдаемого входа.

  • рекурсивный

    логический

    Способ наблюдаемого входа.

  • ярлык

    строка необязательный

    Метка для уведомления. Обязательна, если файловая система была смонтирована с параметром supportsNotifyTag . Обратите внимание, что этот флаг необходим для отправки уведомлений об изменениях, которые произошли даже после выключения системы.

OpenedFile

Характеристики

  • путь к файлу

    нить

    Путь к открытому файлу.

  • режим

    Был ли файл открыт для чтения или записи.

  • openRequestId

    число

    Идентификатор запроса, используемый последовательными запросами на чтение/запись и закрытие.

OpenFileMode

Режим открытия файла. Используется функцией onOpenFileRequested .

Перечисление

"ЧИТАТЬ"

"ПИСАТЬ"

OpenFileRequestedOptions

Характеристики

  • путь к файлу

    нить

    Путь к открываемому файлу.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • режим

    Будет ли файл использоваться для чтения или записи.

  • requestId

    число

    Идентификатор запроса, который будет использоваться последовательными запросами на чтение/запись и закрытие.

ProviderError

Коды ошибок, используемые при предоставлении расширений в ответ на запросы, а также в случае ошибок при вызове методов API. Для успешного выполнения необходимо использовать "OK" .

Перечисление

"ХОРОШО"

"НЕУСПЕШНЫЙ"

"В ИСПОЛЬЗОВАНИИ"

"СУЩЕСТВУЕТ"

"НЕ НАЙДЕНО"

"ДОСТУП ЗАПРЕЩЕН"

"Слишком_много_открыто"

"НЕТ_ПАМЯТИ"

"NO_SPACE"

"НЕ_СПРАВОЧНИК"

"INVALID_OPERATION"

"БЕЗОПАСНОСТЬ"

"ПРЕРЫВАТЬ"

"НЕ_ФАЙЛ"

"НЕ_ПУСТО"

"INVALID_URL"

"IO"

ReadDirectoryRequestedOptions

Характеристики

  • directoryPath

    нить

    Путь к каталогу, содержимое которого запрашивается.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • isDirectory

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение is_directory .

  • mimeType

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение mimeType .

  • modificationTime

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение modificationTime .

  • имя

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение name .

  • requestId

    число

    Уникальный идентификатор этого запроса.

  • размер

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение size .

  • миниатюра

    логический

    Chrome 49+

    Установите значение true , если запрашивается значение thumbnail .

ReadFileRequestedOptions

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • длина

    число

    Количество байтов, подлежащих возврату.

  • компенсировать

    число

    Начальная позиция в файле (в байтах), с которой следует начать чтение.

  • openRequestId

    число

    Идентификатор запроса, используемый для открытия файла.

  • requestId

    число

    Уникальный идентификатор этого запроса.

RemoveWatcherRequestedOptions

Характеристики

  • entryPath

    нить

    Путь отслеживаемой записи.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • рекурсивный

    логический

    Режим наблюдателя.

  • requestId

    число

    Уникальный идентификатор этого запроса.

TruncateRequestedOptions

Характеристики

  • путь к файлу

    нить

    Путь к файлу, который необходимо усечь.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • длина

    число

    Количество байтов, которые будут сохранены после завершения операции.

  • requestId

    число

    Уникальный идентификатор этого запроса.

UnmountOptions

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, которую необходимо отмонтировать.

UnmountRequestedOptions

Характеристики

  • fileSystemId

    нить

    Идентификатор файловой системы, которую необходимо отмонтировать.

  • requestId

    число

    Уникальный идентификатор этого запроса.

Watcher

Характеристики

  • entryPath

    нить

    Наблюдается траектория входа.

  • последний тег

    строка необязательный

    Тег, использованный в последнем уведомлении для наблюдателя.

  • рекурсивный

    логический

    Следует ли включать в процесс отслеживания все дочерние записи рекурсивно? Это может быть справедливо только для каталогов.

WriteFileRequestedOptions

Характеристики

  • данные

    ArrayBuffer

    Буфер байтов для записи в файл.

  • fileSystemId

    нить

    Идентификатор файловой системы, относящейся к данной операции.

  • компенсировать

    число

    Позиция в файле (в байтах), с которой начинается запись байтов.

  • openRequestId

    число

    Идентификатор запроса, используемый для открытия файла.

  • requestId

    число

    Уникальный идентификатор этого запроса.

Методы

get()

chrome.fileSystemProvider.get(
  fileSystemId: string,
)
: Promise<FileSystemInfo>

Возвращает информацию о файловой системе с переданным fileSystemId .

Параметры

  • fileSystemId

    нить

Возвраты

  • Promise< FileSystemInfo >

    Chrome 96+

    Функция обратного вызова для получения результата функции get .

getAll()

chrome.fileSystemProvider.getAll(): Promise<FileSystemInfo[]>

Возвращает все файловые системы, смонтированные данным расширением.

Возвраты

  • Promise< FileSystemInfo []>

    Chrome 96+

    Функция обратного вызова для получения результата функции getAll .

mount()

chrome.fileSystemProvider.mount(
  options: MountOptions,
)
: Promise<void>

Монтирует файловую систему с заданными fileSystemId и displayName . displayName будет отображаться на левой панели приложения «Файлы». displayName может содержать любые символы, включая '/', но не может быть пустой строкой. displayName должен быть описательным, но не обязательно уникальным. fileSystemId не должен быть пустой строкой.

В зависимости от типа монтируемой файловой системы необходимо соответствующим образом установить параметр source .

В случае ошибки в переменную runtime.lastError будет установлен соответствующий код ошибки.

Параметры

Возвраты

  • Обещание<пустота>

    Chrome 96+

    Универсальная функция обратного вызова для указания на успех или неудачу.

notify()

Chrome 45+
chrome.fileSystemProvider.notify(
  options: NotifyOptions,
)
: Promise<void>

Уведомляет об изменениях в отслеживаемом каталоге по observedPath в recursive режиме. Если файловая система смонтирована с supportsNotifyTag , то необходимо указать tag , и все изменения с момента последнего уведомления всегда будут сообщаться, даже если система была выключена. Последний тег можно получить с помощью getAll .

Для использования необходимо установить параметр манифеста file_system_provider.notify в значение true.

Значение tag может быть любой строкой, уникальной для каждого вызова, что позволяет идентифицировать последнее зарегистрированное уведомление. Например, если расширение, предоставляющее уведомление, запускается после перезагрузки, и тег последнего зарегистрированного уведомления равен "123", то оно должно вызывать notify обо всех изменениях, произошедших с момента изменения, помеченного тегом "123". Значение не может быть пустой строкой.

Не все поставщики могут предоставить тег, но если файловая система имеет журнал изменений, то тегом может быть, например, номер изменения или номер ревизии.

Обратите внимание, что если удаляется родительский каталог, то удаляются и все дочерние записи, и если за ними ведется наблюдение, то об этом необходимо уведомить API. Кроме того, если каталог переименовывается, то удаляются и все дочерние записи, поскольку в их исходных путях больше нет записей.

В случае ошибки в переменную runtime.lastError будет установлен соответствующий код ошибки.

Параметры

Возвраты

  • Обещание<пустота>

    Chrome 96+

    Универсальная функция обратного вызова для указания на успех или неудачу.

unmount()

chrome.fileSystemProvider.unmount(
  options: UnmountOptions,
)
: Promise<void>

Отключает файловую систему с заданным fileSystemId . Этот метод необходимо вызывать после вызова onUnmountRequested . Кроме того, предоставляющее расширение может принять решение о выполнении отключения, если запрос не был сделан (например, в случае потери соединения или ошибки файла).

В случае ошибки в переменную runtime.lastError будет установлен соответствующий код ошибки.

Параметры

Возвраты

  • Обещание<пустота>

    Chrome 96+

    Универсальная функция обратного вызова для указания на успех или неудачу.

События

onAbortRequested

chrome.fileSystemProvider.onAbortRequested.addListener(
  callback: function,
)

Этот сигнал возникает при запросе на прерывание операции с operationRequestId . Операция, выполняемая с operationRequestId должна быть немедленно остановлена, и должен быть вызван successCallback этого запроса на прерывание. Если прерывание не удается, необходимо вызвать errorCallback . Обратите внимание, что обратные вызовы прерываемой операции вызывать не следует, так как они будут проигнорированы. Несмотря на вызов errorCallback , запрос может быть принудительно прерван.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: AbortRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onAddWatcherRequested

Chrome 45+
chrome.fileSystemProvider.onAddWatcherRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на установку нового наблюдателя за каталогом. В случае ошибки необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: AddWatcherRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onCloseFileRequested

chrome.fileSystemProvider.onCloseFileRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на закрытие файла, ранее открытого с помощью openRequestId .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: CloseFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onConfigureRequested

Chrome 44+
chrome.fileSystemProvider.onConfigureRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе отображения диалогового окна конфигурации для fileSystemId . Если она обрабатывается, параметр манифеста file_system_provider.configurable должен быть установлен в значение true.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: ConfigureRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onCopyEntryRequested

chrome.fileSystemProvider.onCopyEntryRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе копирования записи (рекурсивно, если это каталог). Если возникает ошибка, необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: CopyEntryRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onCreateDirectoryRequested

chrome.fileSystemProvider.onCreateDirectoryRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на создание каталога. Операция должна завершиться ошибкой EXISTS, если целевой каталог уже существует. Если recursive равен true, то должны быть созданы все отсутствующие каталоги в указанном пути.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: CreateDirectoryRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onCreateFileRequested

chrome.fileSystemProvider.onCreateFileRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на создание файла. Если файл уже существует, необходимо вызвать errorCallback с кодом ошибки "EXISTS" .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: CreateFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onDeleteEntryRequested

chrome.fileSystemProvider.onDeleteEntryRequested.addListener(
  callback: function,
)

Этот сигнал возникает при запросе на удаление записи. Если recursive равен `true`, и запись является каталогом, то все записи внутри него также должны быть рекурсивно удалены.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: DeleteEntryRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onExecuteActionRequested

Chrome 48+
chrome.fileSystemProvider.onExecuteActionRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе выполнения действия для набора файлов или каталогов. После завершения действия необходимо вызвать successCallback . В случае ошибки необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: ExecuteActionRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onGetActionsRequested

Chrome 48+
chrome.fileSystemProvider.onGetActionsRequested.addListener(
  callback: function,
)

Этот запрос возникает при запросе списка действий для набора файлов или каталогов по адресу entryPaths . Все возвращаемые действия должны быть применимы к каждой записи. Если таких действий нет, следует вернуть пустой массив. Действия должны быть возвращены вместе с вызовом successCallback . В случае ошибки необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: GetActionsRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      (actions: Action[]) => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onGetMetadataRequested

chrome.fileSystemProvider.onGetMetadataRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе метаданных файла или каталога по entryPath . Метаданные должны быть возвращены вместе с вызовом successCallback . В случае ошибки необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: GetMetadataRequestedOptions, successCallback: function, errorCallback: function) => void

onMountRequested

Chrome 44+
chrome.fileSystemProvider.onMountRequested.addListener(
  callback: function,
)

Событие возникает при запросе отображения диалогового окна для монтирования новой файловой системы. Если расширение/приложение является обработчиком файлов, то это событие обрабатывать не следует. Вместо этого следует обрабатывать событие app.runtime.onLaunched , чтобы монтировать новые файловые системы при открытии файла. Для множественного монтирования параметр манифеста file_system_provider.multiple_mounts должен быть установлен в значение true.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (successCallback: function, errorCallback: function) => void

    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onMoveEntryRequested

chrome.fileSystemProvider.onMoveEntryRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе перемещения записи (рекурсивно, если это каталог). Если возникает ошибка, необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: MoveEntryRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onOpenFileRequested

chrome.fileSystemProvider.onOpenFileRequested.addListener(
  callback: function,
)

Этот параметр возникает при запросе на открытие файла по filePath . Если файл не существует, операция должна завершиться неудачей. Максимальное количество файлов, открываемых одновременно, можно указать с помощью MountOptions .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: OpenFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      (metadata?: EntryMetadata) => void

      • метаданные

        EntryMetadata (необязательно)

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onReadDirectoryRequested

chrome.fileSystemProvider.onReadDirectoryRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе содержимого каталога по пути directoryPath . Результаты должны возвращаться по частям путем многократного вызова функции successCallback . В случае ошибки необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: ReadDirectoryRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      (entries: EntryMetadata[], hasMore: boolean) => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onReadFileRequested

chrome.fileSystemProvider.onReadFileRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на чтение содержимого файла, ранее открытого с помощью openRequestId . Результаты должны возвращаться по частям путем многократного вызова successCallback . В случае ошибки необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: ReadFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      (data: ArrayBuffer, hasMore: boolean) => void

      • данные

        ArrayBuffer

      • hasMore

        логический

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onRemoveWatcherRequested

Chrome 45+
chrome.fileSystemProvider.onRemoveWatcherRequested.addListener(
  callback: function,
)

Генерируется, когда следует удалить наблюдателя. Если возникает ошибка, необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: RemoveWatcherRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onTruncateRequested

chrome.fileSystemProvider.onTruncateRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на усечение файла до желаемой длины. В случае ошибки необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: TruncateRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onUnmountRequested

chrome.fileSystemProvider.onUnmountRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на размонтирование файловой системы с идентификатором fileSystemId . В ответе необходимо вызвать метод API unmount вместе с successCallback . Если размонтирование невозможно (например, из-за незавершенной операции), необходимо вызвать errorCallback .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: UnmountRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void

onWriteFileRequested

chrome.fileSystemProvider.onWriteFileRequested.addListener(
  callback: function,
)

Эта ошибка возникает при запросе на запись содержимого в файл, ранее открытый с использованием openRequestId .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (options: WriteFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • параметры
    • успехОбратный вызов

      функция

      Параметр successCallback выглядит следующим образом:

      () => void

    • errorCallback

      функция

      Параметр errorCallback выглядит следующим образом:

      (error: ProviderError) => void