chrome.fileSystem

Opis

Interfejs API chrome.fileSystem służy do tworzenia, odczytywania i zapisywania plików w lokalnym systemie plików użytkownika oraz do nawigowania w nim. Ten interfejs API umożliwia Aplikacje Chrome odczyt i zapis w wybranej przez użytkownika lokalizacji. Na przykład aplikacja do edycji tekstu może używać tego interfejsu API do odczytywania i zapisywania dokumentów lokalnych. Wszystkie błędy są powiadamiane przez metodę chrome.runtime.lastError.

Uprawnienia

fileSystem

Dostępność

Tylko pierwszy plan .

Typy

AcceptOption

Właściwości

  • opis

    ciąg znaków opcjonalny

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

  • rozszerzenia

    string[] opcjonalnie

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

  • mimeTypes

    string[] opcjonalnie

    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

  • przyjmuje

    AcceptOption[] opcjonalny

    Opcjonalna lista opcji akceptowania tego narzędzia do otwierania plików. Każda opcja zostanie przedstawiona użytkownikowi jako unikalna grupa.

  • acceptsAllTypes

    Wartość logiczna opcjonalna

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

  • acceptsMultiple

    Wartość logiczna opcjonalna

    Określa, czy zaakceptować wiele plików. Ta funkcja jest obsługiwana tylko w przypadku plików openFile i openWritableFile. Jeśli ta opcja ma wartość true (prawda), wywołanie zwrotne select Entry zostanie wywołane z listą wpisów. W przeciwnym razie zostanie wywołana z pojedynczym 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

    Opcjonalnie ChooseEntryType

    Typ promptu, który chcesz wyświetlić. Wartość domyślna to „openFile”.

ChooseEntryType

Typ wyliczeniowy

"openFile"
Powoduje użytkownikowi otwarcie istniejącego pliku i w przypadku powodzenia zwraca element FileEntry. Począwszy od wersji Chrome 31, element FileEntry będzie można zapisywać, jeśli aplikacja ma uprawnienia „write” Uprawnienia w sekcji „fileSystem”; W przeciwnym razie element FileEntry będzie miał wartość tylko do odczytu.

"openWritableFile"
Powoduje użytkownikowi otwarcie istniejącego pliku i w przypadku powodzenia zwraca dostępny do zapisu plik FileEntry. Jeśli aplikacja nie ma polecenia „write”, wywołania korzystające z tego typu zakończą się niepowodzeniem, a występuje błąd czasu działania. w sekcji „fileSystem”.

"saveFile"
Powoduje, aby użytkownik otworzył istniejący lub nowy plik i w przypadku powodzenia zwraca dostępny do zapisu plik FileEntry. Jeśli aplikacja nie ma polecenia „write”, wywołania korzystające z tego typu zakończą się niepowodzeniem, a występuje błąd czasu działania. w sekcji „fileSystem”.

"openDirectory"
Wyświetla użytkownikowi prośbę o otworzenie katalogu i w przypadku powodzenia zwraca wpis DirectoryEntry. Jeśli aplikacja nie ma „katalogu”, wywołania korzystające z tego typu zakończą się niepowodzeniem, a w czasie działania pojawi się błąd. w sekcji „fileSystem”. Jeśli aplikacja ma polecenie „write” uprawnienia w „fileSystem”, zwrócony element DirectoryEntry będzie umożliwiał zapis; W przeciwnym razie witryna będzie miała status tylko do odczytu. Nowość w Chrome 31.

RequestFileSystemOptions

Chrome w wersji 44 lub nowszej .

Właściwości

  • volumeId

    ciąg znaków

    Identyfikator żądanego woluminu.

  • z możliwością zapisu

    Wartość logiczna opcjonalna

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

Volume

Chrome w wersji 44 lub nowszej .

Właściwości

  • volumeId

    ciąg znaków

  • z możliwością zapisu

    wartość logiczna

VolumeListChangedEvent

Chrome w wersji 44 lub nowszej .

Właściwości

Metody

chooseEntry()

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

Poproś użytkownika o wybranie pliku lub katalogu.

Parametry

  • Opcje
  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • wpis

      Wpis opcjonalny

    • fileEntries

      FileEntry[] opcjonalny

getDisplayPath()

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

Pobieranie wyświetlanej ścieżki obiektu Entry. Wyświetlana ścieżka jest określana na podstawie pełnej ścieżki pliku lub katalogu w lokalnym systemie plików, ale może być bardziej czytelna dla celów wyświetlania.

Parametry

  • wpis

    Wpis

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    (displayPath: string) => void

    • displayPath

      ciąg znaków

Zwroty

  • Obietnica<ciąg>

    Chrome w wersji 117 lub nowszej .

    Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.

getVolumeList()

Obietnica Chrome w wersji 44 lub nowszej
chrome.fileSystem.getVolumeList(
  callback?: function,
)

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

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    (volumes?: Volume[]) => void

Zwroty

  • Promise&lt;Volume[] | niezdefiniowane>

    Chrome w wersji 117 lub nowszej .

    Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.

getWritableEntry()

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

Uzyskaj możliwość zapisu z innego wpisu. Jeśli aplikacja nie ma polecenia „write”, to wywołanie zakończy się niepowodzeniem i pojawi się błąd czasu działania. w sekcji „fileSystem”. Jeśli wpis dotyczy wpisu w katalogu, wywołanie nie powiedzie się, jeśli aplikacja nie ma tego „katalogu” w sekcji „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,
)

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

Parametry

  • id

    ciąg znaków

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    (isRestorable: boolean) => void

    • isRestorable

      wartość logiczna

Zwroty

  • Promise&lt;boolean&gt;

    Chrome w wersji 117 lub nowszej .

    Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.

isWritableEntry()

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

Określa, czy ten wpis jest dostępny do zapisu.

Parametry

  • wpis

    Wpis

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    (isWritable: boolean) => void

    • isWritable

      wartość logiczna

Zwroty

  • Promise&lt;boolean&gt;

    Chrome w wersji 117 lub nowszej .

    Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.

requestFileSystem()

Obietnica Chrome w wersji 44 lub nowszej
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)

Prosi 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ć zapis. W przeciwnym razie będzie ona 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 z potwierdzeniem. W przypadku błędu wartość fileSystem będzie nieokreślona, a ustawienie chrome.runtime.lastError zostanie ustawione.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    (fileSystem?: FileSystem) => void

    • fileSystem

      FileSystem (opcjonalnie)

Zwroty

  • Promise&lt;FileSystem | niezdefiniowane>

    Chrome w wersji 117 lub nowszej .

    Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, 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ć. W przeciwnym razie to połączenie zakończy się niepowodzeniem z powodu błędu podczas działania.

Parametry

  • id

    ciąg znaków

  • 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ć w celu przywrócenia elementu Entry w celu odzyskania dostępu do określonego wpisu w pliku. Zachowanych zostanie tylko 500 ostatnio używanych wpisów, przy czym wywołania opcji preventEntry i recoveryEntry są liczone jako użycie. Jeśli aplikacja ma sekcję „Zapisane informacje” w sekcji „fileSystem”, wpisy są zachowywane bezterminowo. W przeciwnym razie wpisy są zachowywane tylko podczas uruchamiania aplikacji i po jej ponownym uruchomieniu.

Parametry

  • wpis

    Wpis

Zwroty

  • ciąg znaków

Wydarzenia

onVolumeListChanged

Chrome w wersji 44 lub nowszej .
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

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

Parametry