chrome.fileSystem

Opis

Interfejs chrome.fileSystem API umożliwia tworzenie, odczytywanie, nawigację i zapisywanie w lokalnym systemie plików użytkownika. Dzięki niemu Aplikacje Chrome mogą odczytywać i zapisywać dane w wybranych przez użytkownika lokalizacjach. Na przykład aplikacja edytora tekstu może używać tego interfejsu API do odczytywania i zapisywania dokumentów lokalnych. Wszystkie błędy są powiadamiane w pliku chrome.runtime.lastError.

Uprawnienia

fileSystem

Dostępność

Tylko na pierwszym planie

Typy

AcceptOption

Właściwości

  • opis

    ciąg znaków opcjonalny

    To jest opcjonalny opis tej opcji. Jeśli go nie podasz, opis zostanie wygenerowany automatycznie.Zwykle zawiera rozszerzoną listę prawidłowych rozszerzeń (np. „text/html” może rozwinąć się do „*.html, *.htm”).

  • rozszerzenia

    string[] opcjonalny

    Akceptowane rozszerzenia, np. „jpg”, „gif” lub „crx”.

  • mimeTypes

    string[] opcjonalny

    Akceptowane typy MIME, np. „image/jpeg” lub „audio/*”. Jeden z typów mimeType lub rozszerzeń musi zawierać co najmniej jeden prawidłowy element.

ChooseEntryOptions

Właściwości

  • akceptuje

    AcceptOption[] opcjonalnie

    Opcjonalna lista opcji akceptowania dla tego narzędzia do otwierania plików. Każda opcja będzie przedstawiana użytkownikowi jako unikalna grupa.

  • acceptsAllTypes

    wartość logiczna opcjonalna

    Określa, czy chcesz zaakceptować wszystkie typy plików oprócz opcji określonych w argumencie akceptacji. Wartość domyślna to true (prawda). Jeśli pole akceptacji nie jest skonfigurowane lub nie zawiera prawidłowych wpisów, ta wartość jest zawsze resetowana do wartości Prawda.

  • acceptsMultiple

    wartość logiczna opcjonalna

    Określa, czy zaakceptować wiele plików. Ta funkcja jest obsługiwana tylko w przypadku typów openFile i openWritableFile. Jeśli zasada ma wartość Prawda, wywołanie zwrotne dotyczące wyboru wpisu będzie wywoływane z listą wpisów. W przeciwnym razie zostanie wywołana z jednym wpisem.

  • suggestedName

    ciąg znaków opcjonalny

    Sugerowana nazwa pliku, która będzie wyświetlana użytkownikowi jako domyślna nazwa do odczytu lub zapisu. Nie jest to jednak wymagane.

  • typ

    ChooseEntryType opcjonalnie

    Typ komunikatu do wyświetlenia. Domyślna wartość to „openFile”.

ChooseEntryType

Enum

"openFile"
Wyświetla użytkownikowi prośbę o otworzenie istniejącego pliku, a w przypadku powodzenia zwraca wartość FileEntry. Od wersji Chrome 31 obiekt FileEntry będzie możliwy do zapisu, jeśli aplikacja ma uprawnienia do zapisu w kategorii „fileSystem”. W przeciwnym razie obiekt FileEntry będzie dostępny tylko do odczytu.

"openWritableFile"
Wyświetla użytkownikowi prośbę o otwarcie istniejącego pliku, a w przypadku sukcesu zwraca wartość FileEntry z możliwością zapisu. Wywołania tego typu będą kończyć się niepowodzeniem z powodu błędu środowiska wykonawczego, jeśli aplikacja nie ma uprawnienia do zapisu w sekcji „fileSystem”.

"saveFile"
Wyświetla użytkownikowi prośbę o otwarcie istniejącego lub nowego pliku, a w przypadku powodzenia zwraca wartość FileEntry z możliwością zapisu. Wywołania tego typu będą kończyć się niepowodzeniem z powodu błędu środowiska wykonawczego, jeśli aplikacja nie ma uprawnienia do zapisu w sekcji „fileSystem”.

"open Directory"
Wyświetla użytkownikowi prośbę o otwarcie katalogu, a w przypadku powodzenia zwraca wpis katalogu. Wywołania tego typu będą kończyć się niepowodzeniem z powodu błędu środowiska wykonawczego, jeśli aplikacja nie ma uprawnienia „directory” (katalog) w sekcji „fileSystem”. Jeśli aplikacja ma uprawnienie „write” na liście „fileSystem”, zwrócony katalog DirectoryEntry będzie możliwy do zapisu. W przeciwnym razie będzie dostępny tylko do odczytu. Nowości w Chrome 31.

RequestFileSystemOptions

Chrome 44 i nowsze wersje

Właściwości

  • volumeId

    string,

    Identyfikator żądanego woluminu.

  • z możliwością zapisu

    wartość logiczna opcjonalna

    Określa, czy żądany system plików ma umożliwiać zapis. Domyślnie tylko do odczytu.

Volume

Chrome 44 i nowsze wersje

Właściwości

  • volumeId

    string,

  • z możliwością zapisu

    boolean

VolumeListChangedEvent

Chrome 44 i nowsze wersje

Właściwości

Metody

chooseEntry()

chrome.fileSystem.chooseEntry(
  options?: ChooseEntryOptions,
  callback: function,
)

Poproś użytkownika o wybranie pliku lub katalogu.

Parametry

  • Opcje

    ChooseEntryOptions opcjonalnie

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (entry?: Entry,fileEntries?: FileEntry[])=>void

    • wpis

      Wpis opcjonalny

    • fileEntries

      FileEntry[] opcjonalnie

getDisplayPath()

Obietnica
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)

Pobieranie ścieżki wyświetlania obiektu Entry. Wyświetlana ścieżka jest oparta na pełnej ścieżce pliku lub katalogu w lokalnym systemie plików, ale może być bardziej czytelna na potrzeby wyświetlania.

Parametry

  • wpis

    Wpis

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (displayPath: string)=>void

    • displayPath

      string,

Akcje powrotne

  • Obietnica<string>

    Chrome 117 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

getVolumeList()

Obietnica Chrome 44 i nowsze wersje
chrome.fileSystem.getVolumeList(
  callback?: function,
)

Zwraca listę woluminów dostępnych dla funkcji requestFileSystem(). Wymagane są uprawnienia do pliku manifestu "fileSystem": {"requestFileSystem"}. Dostępne dla aplikacji kiosku działających tylko w sesji kiosku. W przypadku błędu wartość volumes jest nieokreślona, a ustawiona jest chrome.runtime.lastError.

Parametry

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (volumes?: Volume[])=>void

Akcje powrotne

  • Obietnica<wolumin[]|undefined>

    Chrome 117 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

getWritableEntry()

chrome.fileSystem.getWritableEntry(
  entry: Entry,
  callback: function,
)

Pobierz wpis z możliwością zapisu z innego wpisu. To wywołanie nie powiedzie się z powodu błędu środowiska wykonawczego, jeśli aplikacja nie ma uprawnień do zapisu w sekcji „fileSystem”. Jeśli wpis jest wpisem DirectoryEntry, wywołanie to zakończy się niepowodzeniem, jeśli aplikacja nie ma uprawnienia „directory” (katalog) w obszarze „fileSystem”.

Parametry

  • wpis

    Wpis

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (entry: Entry)=>void

    • wpis

      Wpis

isRestorable()

Obietnica
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)

Zwraca, czy aplikacja ma uprawnienia do przywracania wpisu o podanym identyfikatorze.

Parametry

  • id

    string,

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (isRestorable: boolean)=>void

    • isRestorable

      boolean

Akcje powrotne

  • Promise<boolean>

    Chrome 117 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

isWritableEntry()

Obietnica
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)

Określa, czy ten wpis jest możliwy do zapisu.

Parametry

  • wpis

    Wpis

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (isWritable: boolean)=>void

    • isWritable

      boolean

Akcje powrotne

  • Promise<boolean>

    Chrome 117 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

requestFileSystem()

Obietnica Chrome 44 i nowsze wersje
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)

Wysyła prośbę o dostęp do systemu plików dla woluminu reprezentowanego przez options.volumeId. Jeśli zasada options.writable ma wartość Prawda, w systemie plików można zapisywać dane. W przeciwnym razie będzie on tylko do odczytu. Opcja writable wymaga uprawnienia "fileSystem": {"write"} w pliku manifestu. Dostępne dla aplikacji kiosku działających tylko w sesji kiosku. W przypadku ręcznego uruchamiania trybu kiosku u góry okna aktywnej aplikacji pojawi się okno potwierdzenia. W przypadku błędu wartość fileSystem jest nieokreślona, a ustawiona jest chrome.runtime.lastError.

Parametry

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (fileSystem?: FileSystem)=>void

    • fileSystem

      FileSystem – opcjonalny

Akcje powrotne

  • Promise<FileSystem|undefined>

    Chrome 117 i nowsze wersje

    Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych platform. Inne platformy muszą używać wywołań zwrotnych.

restoreEntry()

chrome.fileSystem.restoreEntry(
  id: string,
  callback: function,
)

Zwraca wpis pliku o podanym identyfikatorze, jeśli można go przywrócić. To wywołanie nie powiedzie się z powodu błędu środowiska wykonawczego.

Parametry

  • id

    string,

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (entry: Entry)=>void

    • wpis

      Wpis

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)

Zwraca identyfikator, który można przekazać do operacji resetEntry w celu odzyskania dostępu do wpisu w pliku. Zachowuje się tylko 500 ostatnio używanych wpisów, przy czym wywołania przechowywania wpisu i przywracania wpisów są liczone jako użycie. Jeśli aplikacja ma uprawnienie „retainEntries” w sekcji „fileSystem”, wpisy są przechowywane w nieskończoność. W przeciwnym razie wpisy są przechowywane tylko podczas działania aplikacji i po jej ponownym uruchomieniu.

Parametry

  • wpis

    Wpis

Akcje powrotne

  • string,

Wydarzenia

onVolumeListChanged

Chrome 44 i nowsze wersje
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

Wywoływane po zmianie listy dostępnych woluminów.

Parametry