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ść
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
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
Właściwości
-
volumeId
ciąg znaków
-
z możliwością zapisu
wartość logiczna
VolumeListChangedEvent
Właściwości
-
woluminy
Głośność[]
Metody
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
)
Poproś użytkownika o wybranie pliku lub katalogu.
Parametry
-
Opcje
Opcjonalne ChooseEntryOptions
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(entry?: Entry, fileEntries?: FileEntry[]) => void
-
wpis
Wpis opcjonalny
-
fileEntries
FileEntry[] opcjonalny
-
getDisplayPath()
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()
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
Zwroty
-
Promise<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()
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<boolean>
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()
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<boolean>
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()
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
-
Opcje
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(fileSystem?: FileSystem) => void
-
fileSystem
FileSystem (opcjonalnie)
-
Zwroty
-
Promise<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.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
Wywoływane po zmianie listy dostępnych woluminów.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(event: VolumeListChangedEvent) => void
-
event
-