תיאור
משתמשים ב-API של chrome.fileSystem כדי ליצור, לקרוא, לנווט ולכתוב במערכת הקבצים המקומית של המשתמש. באמצעות ה-API הזה, אפליקציות Chrome יכולות לקרוא ולכתוב במיקום שהמשתמש בחר. לדוגמה, אפליקציה לעריכת טקסט יכולה להשתמש ב-API כדי לקרוא ולכתוב מסמכים מקומיים. כל הכשלים מדווחים באמצעות chrome.runtime.lastError.
הרשאות
fileSystemזמינות
סוגים
AcceptOption
מאפיינים
-
תיאור
מחרוזת אופציונלי
זהו תיאור הטקסט האופציונלי של האפשרות הזו. אם לא קיים תיאור, המערכת תיצור תיאור באופן אוטומטי. בדרך כלל התיאור יכיל רשימה מורחבת של סיומות חוקיות (למשל, "text/html" עשוי להתרחב ל-"*.html, *.htm").
-
תוספים
string[] אופציונלי
סיומות קבצים שאפשר לקבל, למשל "jpg", "gif", "crx".
-
mimeTypes
string[] אופציונלי
סוגי MIME שאפשר לקבל, למשל "image/jpeg" או "audio/*". אחד מהשדות mimeTypes או extensions חייב להכיל לפחות רכיב אחד תקין.
ChooseEntryOptions
מאפיינים
-
מקבלת
AcceptOption[] אופציונלי
רשימה אופציונלית של אפשרויות קבלה לפתיחת הקובץ הזה. כל אפשרות תוצג למשתמש הקצה כקבוצה ייחודית.
-
acceptsAllTypes
בוליאני אופציונלי
אם לקבל את כל סוגי הקבצים, בנוסף לאפשרויות שצוינו בארגומנט accepts. ערך ברירת המחדל הוא true. אם השדה accepts לא מוגדר או לא מכיל ערכים תקינים, הוא תמיד יאופס ל-true.
-
acceptsMultiple
בוליאני אופציונלי
אם לקבל כמה קבצים. האפשרות הזו נתמכת רק ב-openFile וב-openWritableFile. אם המדיניות מוגדרת כ-True, הקריאה החוזרת (callback) ל-chooseEntry תתבצע עם רשימה של רשומות. אחרת, הוא יופעל עם רשומה אחת.
-
suggestedName
מחרוזת אופציונלי
שם הקובץ המוצע שיוצג למשתמש כשם ברירת המחדל לשמירה. האפשרות הזו היא אופציונלית ורלוונטית רק ל-"saveFile".
-
סוג
ChooseEntryType אופציונלי
סוג ההודעה שתוצג. ערך ברירת המחדל הוא "openFile".
ChooseEntryType
טיפוסים בני מנייה (enum)
"openFile"
מבקש מהמשתמש לפתוח קובץ קיים ומחזיר FileEntry אם הפעולה מצליחה. החל מגרסה 31 של Chrome, אפשר יהיה לכתוב ב-FileEntry אם לאפליקציה יש הרשאת write (כתיבה) ב-fileSystem (מערכת קבצים). אחרת, FileEntry יהיה לקריאה בלבד.
"openWritableFile"
מבקש מהמשתמש לפתוח קובץ קיים ומחזיר FileEntry שניתן לכתיבה אם הפעולה מצליחה. קריאות שמשתמשות בסוג הזה ייכשלו עם שגיאת זמן ריצה אם לאפליקציה אין הרשאת "כתיבה" ב-"fileSystem".
"saveFile"
מבקש מהמשתמש לפתוח קובץ קיים או קובץ חדש ומחזיר FileEntry שניתן לכתיבה אם הפעולה מצליחה. קריאות שמשתמשות בסוג הזה ייכשלו עם שגיאת זמן ריצה אם לאפליקציה אין הרשאת "כתיבה" ב-"fileSystem".
"openDirectory"
מבקש מהמשתמש לפתוח ספרייה ומחזיר DirectoryEntry אם הפעולה מצליחה. קריאות שמשתמשות בסוג הזה ייכשלו עם שגיאת זמן ריצה אם לאפליקציה אין את ההרשאה "directory" בקטע "fileSystem". אם לאפליקציה יש הרשאת 'כתיבה' ב-'fileSystem', אפשר יהיה לכתוב ב-DirectoryEntry שיוחזר. אחרת, הוא יהיה לקריאה בלבד. מה חדש ב-Chrome 31.
RequestFileSystemOptions
מאפיינים
-
volumeId
מחרוזת
המזהה של הכרך המבוקש.
-
ניתן לכתיבה
בוליאני אופציונלי
אם מערכת הקבצים המבוקשת צריכה להיות ניתנת לכתיבה. ברירת המחדל היא לקריאה בלבד.
Volume
מאפיינים
-
volumeId
מחרוזת
-
ניתן לכתיבה
בוליאני
VolumeListChangedEvent
מאפיינים
-
כרכים
Methods
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
): void
מבקשים מהמשתמש לבחור קובץ או ספרייה.
פרמטרים
-
אפשרויות
ChooseEntryOptions אופציונלי
-
callback
פונקציה
הפרמטר
callbackנראה כך:(entry?: Entry, fileEntries?: FileEntry[]) => void
-
ערך
ערך אופציונלי
-
fileEntries
FileEntry[] אופציונלי
-
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
): Promise<string>
קבלת נתיב התצוגה של אובייקט Entry. הנתיב לתצוגה מבוסס על הנתיב המלא של הקובץ או הספרייה במערכת הקבצים המקומית, אבל יכול להיות שהוא יהיה קריא יותר למטרות תצוגה.
פרמטרים
-
ערך
הערך
-
callback
function optional
הפרמטר
callbackנראה כך:(displayPath: string) => void
-
displayPath
מחרוזת
-
החזרות
-
Promise<string>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
): Promise<Volume[] | undefined>
מחזירה רשימה של כרכים שזמינים עבור requestFileSystem(). נדרשת הרשאת המניפסט "fileSystem": {"requestFileSystem"}. האפשרות הזו זמינה רק לאפליקציות קיוסק שפועלות בסשן של קיוסק. אם תהיה שגיאה, הערך של volumes לא יוגדר, והערך של chrome.runtime.lastError יוגדר.
פרמטרים
החזרות
-
Promise<Volume[] | undefined>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
getWritableEntry()
chrome.fileSystem.getWritableEntry(
entry: Entry,
callback: function,
): void
קבלת רשומה שניתן לכתוב בה מרשומה אחרת. הקריאה הזו תיכשל עם שגיאת זמן ריצה אם לאפליקציה אין הרשאת "כתיבה" ב-"fileSystem". אם הרשומה היא DirectoryEntry, הקריאה הזו תיכשל אם לאפליקציה אין את ההרשאה "directory" בקטע "fileSystem".
פרמטרים
-
ערך
הערך
-
callback
פונקציה
הפרמטר
callbackנראה כך:(entry: Entry) => void
-
ערך
הערך
-
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
): Promise<boolean>
הפונקציה מחזירה ערך שמציין אם לאפליקציה יש הרשאה לשחזר את הרשומה עם המזהה שצוין.
פרמטרים
-
id [מזהה]
מחרוזת
-
callback
function optional
הפרמטר
callbackנראה כך:(isRestorable: boolean) => void
-
isRestorable
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
): Promise<boolean>
הפונקציה בודקת אם אפשר לכתוב ברשומה הזו או לא.
פרמטרים
-
ערך
הערך
-
callback
function optional
הפרמטר
callbackנראה כך:(isWritable: boolean) => void
-
isWritable
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
): Promise<FileSystem | undefined>
בקשת גישה למערכת קבצים של אמצעי אחסון שמיוצג על ידי options.volumeId. אם המדיניות options.writable מוגדרת כ-True, אפשר יהיה לכתוב במערכת הקבצים. אחרת, הוא יהיה לקריאה בלבד. כדי להשתמש באפשרות writable, צריך את ההרשאה "fileSystem": {"write"} במניפסט. האפשרות הזו זמינה רק לאפליקציות קיוסק שפועלות בסשן קיוסק. במצב קיוסק בהפעלה ידנית, תוצג תיבת דו-שיח לאישור מעל לחלון האפליקציה הפעילה. אם תהיה שגיאה, הערך של fileSystem לא יוגדר, והערך של chrome.runtime.lastError יוגדר.
פרמטרים
-
אפשרויות
-
callback
function optional
הפרמטר
callbackנראה כך:(fileSystem?: FileSystem) => void
-
fileSystem
FileSystem אופציונלי
-
החזרות
-
Promise<FileSystem | undefined>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
restoreEntry()
chrome.fileSystem.restoreEntry(
id: string,
callback: function,
): void
הפונקציה מחזירה את רשומת הקובץ עם המזהה שצוין, אם אפשר לשחזר אותו. אחרת, הקריאה הזו תיכשל עם שגיאת זמן ריצה.
פרמטרים
-
id [מזהה]
מחרוזת
-
callback
פונקציה
הפרמטר
callbackנראה כך:(entry: Entry) => void
-
ערך
הערך
-
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
): string
מחזירה מזהה שאפשר להעביר אל restoreEntry כדי לקבל שוב גישה לרשומה נתונה של קובץ. רק 500 הרשומות האחרונות שהיו בשימוש נשמרות, כאשר קריאות ל-retainEntry ול-restoreEntry נחשבות כשימוש. אם לאפליקציה יש את ההרשאה retainEntries בקטע fileSystem, הרשומות נשמרות ללא הגבלת זמן. אחרת, הרשומות נשמרות רק כשהאפליקציה פועלת וגם אחרי הפעלה מחדש.
פרמטרים
-
ערך
הערך
החזרות
-
מחרוזת
אירועים
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
מופעלת כשרשימת הכרכים הזמינים משתנה.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(event: VolumeListChangedEvent) => void
-
אירוע
-