Opis
Używaj interfejsu API chrome.fileSystem, aby tworzyć, odczytywać, przeglądać i zapisywać pliki w lokalnym systemie plików użytkownika. Dzięki temu interfejsowi API aplikacje Chrome mogą odczytywać i zapisywać dane w lokalizacji wybranej przez użytkownika. Na przykład aplikacja edytora tekstu może używać interfejsu API do odczytywania i zapisywania dokumentów lokalnych. Wszystkie błędy są zgłaszane za pomocą chrome.runtime.lastError.
Uprawnienia
fileSystemDostępność
Typy
AcceptOption
Właściwości
-
opis
ciąg znaków opcjonalny
To jest opcjonalny opis tekstowy tej opcji. Jeśli nie ma opisu, zostanie on wygenerowany automatycznie.Zwykle zawiera on rozszerzoną listę prawidłowych rozszerzeń (np. „text/html” może zostać rozwinięte do „*.html, *.htm”).
-
rozszerzenia
string[] opcjonalne
Rozszerzenia, które mają być akceptowane, np. „jpg”, „gif”, „crx”.
-
mimeTypes
string[] opcjonalne
Typy MIME do zaakceptowania, np. „image/jpeg” lub „audio/*”. Jedno z pól mimeTypes lub extensions musi zawierać co najmniej 1 prawidłowy element.
ChooseEntryOptions
Właściwości
-
akceptuje
AcceptOption[] opcjonalny
Opcjonalna lista opcji akceptacji dla tego otwieracza plików. Każda opcja będzie wyświetlana użytkownikowi jako unikalna grupa.
-
acceptsAllTypes
boolean opcjonalne
Określa, czy akceptować wszystkie typy plików, oprócz opcji określonych w argumencie accepts. Wartość domyślna to true (prawda). Jeśli pole accepts jest nieskonfigurowane lub nie zawiera prawidłowych wpisów, zawsze będzie resetowane do wartości true.
-
acceptsMultiple
boolean opcjonalne
Określa, czy akceptować wiele plików. Ta funkcja jest obsługiwana tylko w przypadku openFile i openWritableFile. Jeśli ta opcja jest ustawiona na „true”, wywołanie zwrotne do chooseEntry zostanie wywołane z listą wpisów. W przeciwnym razie zostanie wywołana z jednym wpisem.
-
suggestedName
ciąg znaków opcjonalny
The suggested file name that will be presented to the user as the default name to save. Jest to opcjonalne i dotyczy tylko „saveFile”.
-
typ
ChooseEntryType opcjonalny
Typ prompta do wyświetlenia. Wartość domyślna to „openFile”.
ChooseEntryType
Typ wyliczeniowy
"openFile"
Prosi użytkownika o otwarcie istniejącego pliku i w przypadku powodzenia zwraca FileEntry. Od wersji Chrome 31 obiekt FileEntry będzie zapisywalny, jeśli aplikacja ma uprawnienie „write” w sekcji „fileSystem”. W przeciwnym razie obiekt FileEntry będzie tylko do odczytu.
"openWritableFile"
Prosi użytkownika o otwarcie istniejącego pliku i w przypadku powodzenia zwraca obiekt FileEntry z możliwością zapisu. Wywołania tego typu zakończą się błędem środowiska wykonawczego, jeśli aplikacja nie ma uprawnień do zapisu w obszarze „fileSystem”.
"saveFile"
Prosi użytkownika o otwarcie istniejącego pliku lub nowego pliku i w przypadku powodzenia zwraca zapisywalny obiekt FileEntry. Wywołania tego typu zakończą się błędem środowiska wykonawczego, jeśli aplikacja nie ma uprawnień do zapisu w obszarze „fileSystem”.
"openDirectory"
Prosi użytkownika o otwarcie katalogu i w przypadku powodzenia zwraca DirectoryEntry. Wywołania tego typu zakończą się błędem środowiska wykonawczego, jeśli aplikacja nie ma uprawnień „directory” w sekcji „fileSystem”. Jeśli aplikacja ma uprawnienie „write” w sekcji „fileSystem”, zwrócony obiekt DirectoryEntry będzie zapisywalny. W przeciwnym razie będzie tylko do odczytu. Nowości w Chrome 31.
RequestFileSystemOptions
Właściwości
-
volumeId
tekst
Identyfikator żądanego woluminu.
-
z możliwością zapisu
boolean opcjonalne
Określa, czy żądany system plików powinien być zapisywalny. Domyślny dostęp to tylko do odczytu.
Volume
Właściwości
-
volumeId
tekst
-
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,
): void
Poproś użytkownika o wybranie pliku lub katalogu.
Parametry
-
Opcje
ChooseEntryOptions opcjonalne
-
callback
funkcja
Parametr
callbackwygląda tak:(entry?: Entry, fileEntries?: FileEntry[]) => void
-
entry
Wpis opcjonalny
-
fileEntries
FileEntry[] opcjonalny
-
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
): Promise<string>
Pobieranie ścieżki wyświetlania obiektu Entry. Ścieżka wyświetlania 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
-
entry
Wpis
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(displayPath: string) => void
-
displayPath
tekst
-
Zwroty
-
Promise<string>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
): Promise<Volume[] | undefined>
Zwraca listę woluminów dostępnych dla: requestFileSystem(). Wymagane jest uprawnienie manifestu "fileSystem": {"requestFileSystem"}. Dostępne tylko dla aplikacji kiosku działających w sesji kiosku. W przypadku błędu zmienna volumes będzie niezdefiniowana, a zmienna chrome.runtime.lastError będzie ustawiona.
Parametry
Zwroty
-
Promise<Volume[] | undefined>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
getWritableEntry()
chrome.fileSystem.getWritableEntry(
entry: Entry,
callback: function,
): void
Pobieranie wpisu z możliwością zapisu z innego wpisu. Jeśli aplikacja nie ma uprawnień do zapisu w sekcji „fileSystem”, to wywołanie zakończy się błędem środowiska wykonawczego. Jeśli wpis jest DirectoryEntry, to wywołanie nie powiedzie się, jeśli aplikacja nie ma uprawnień „directory” w „fileSystem”.
Parametry
-
entry
Wpis
-
callback
funkcja
Parametr
callbackwygląda tak:(entry: Entry) => void
-
entry
Wpis
-
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
): Promise<boolean>
Zwraca informację, czy aplikacja ma uprawnienia do przywracania wpisu o podanym identyfikatorze.
Parametry
-
id
tekst
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(isRestorable: boolean) => void
-
isRestorable
wartość logiczna
-
Zwroty
-
Promise<boolean>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
): Promise<boolean>
Określa, czy ten wpis jest zapisywalny.
Parametry
-
entry
Wpis
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(isWritable: boolean) => void
-
isWritable
wartość logiczna
-
Zwroty
-
Promise<boolean>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
): Promise<FileSystem | undefined>
Prosi o dostęp do systemu plików dla woluminu reprezentowanego przez options.volumeId. Jeśli zasada options.writable ma wartość Prawda, system plików będzie zapisywalny. W przeciwnym razie będzie on dostępny tylko do odczytu. Opcja writable wymaga uprawnienia "fileSystem": {"write"} w pliku manifestu. Dostępne tylko w przypadku aplikacji kiosku działających w sesji kiosku. W przypadku trybu kiosku uruchamianego ręcznie nad aktywnym oknem aplikacji pojawi się okno potwierdzenia. W przypadku błędu zmienna fileSystem będzie niezdefiniowana, a zmienna chrome.runtime.lastError będzie ustawiona.
Parametry
-
Opcje
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(fileSystem?: FileSystem) => void
-
fileSystem
FileSystem opcjonalny
-
Zwroty
-
Promise<FileSystem | undefined>
Chrome 117 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
restoreEntry()
chrome.fileSystem.restoreEntry(
id: string,
callback: function,
): void
Zwraca wpis pliku o podanym identyfikatorze, jeśli można go przywrócić. W przeciwnym razie wywołanie zakończy się błędem środowiska wykonawczego.
Parametry
-
id
tekst
-
callback
funkcja
Parametr
callbackwygląda tak:(entry: Entry) => void
-
entry
Wpis
-
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
): string
Zwraca identyfikator, który można przekazać do funkcji restoreEntry, aby odzyskać dostęp do danego wpisu pliku. Zachowywanych jest tylko 500 ostatnio używanych wpisów, przy czym wywołania funkcji retainEntry i restoreEntry są liczone jako użycie. Jeśli aplikacja ma uprawnienie „retainEntries” w sekcji „fileSystem”, wpisy są przechowywane bezterminowo. W przeciwnym razie wpisy są przechowywane tylko podczas działania aplikacji i między ponownymi uruchomieniami.
Parametry
-
entry
Wpis
Zwroty
-
tekst
Wydarzenia
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
Wywoływane, gdy lista dostępnych woluminów ulegnie zmianie.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(event: VolumeListChangedEvent) => void
-
zdarzenie
-