תיאור
שימוש ב-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 או התוספים חייב להכיל לפחות רכיב חוקי אחד.
ChooseEntryOptions
תכונות
-
מאשר
AcceptOption[] אופציונלי
הרשימה האופציונלית של אפשרויות האישור לפתיחת הקובץ הזה. כל אפשרות תוצג למשתמש הקצה כקבוצה ייחודית.
-
acceptsAllTypes
בוליאני אופציונלי
האם לקבל את כל סוגי הקבצים, בנוסף לאפשרויות שצוינו בארגומנט קבלה. ברירת המחדל היא True. אם שדה האישור לא מוגדר או לא מכיל ערכים חוקיים, הערך הזה תמיד יאופס ל-True.
-
acceptsMultiple
בוליאני אופציונלי
האם לקבל מספר קבצים. האפשרות הזו נתמכת רק ב-openFile וב-openWritableFile. הקריאה החוזרת ל-ChooseEntry תבוצע עם רשימת ערכים, אם היא מוגדרת כ-True. אחרת, הוא ייקרא באמצעות רשומה אחת.
-
suggestedName
מחרוזת אופציונלי
שם הקובץ המוצע שיוצג למשתמש כשם ברירת המחדל לקריאה או לכתיבה. הפעולה הזאת אופציונלית.
-
סוג
ChooseEntryType אופציונלי
סוג ההנחיה להצגה. ברירת המחדל היא 'openFile'.
ChooseEntryType
טיפוסים בני מנייה (enum)
"openFile"
מציגה למשתמש בקשה לפתוח קובץ קיים ומחזירה קובץ FileEntry. החל מ-Chrome 31 ואילך, ניתן יהיה לכתוב ב-FileEntry אם לאפליקציה יש הרשאת כתיבה בקטע fileSystem. אחרת, FileEntry יהיה לקריאה בלבד.
"openWritableFile"
מציגה למשתמש בקשה לפתוח קובץ קיים ומחזירה בהצלחה קובץ FileEntry שניתן לכתיבה. קריאות מהסוג הזה ייכשלו ותוצג שגיאת זמן ריצה אם לאפליקציה אין הרשאת כתיבה בקטע fileSystem.
"saveFile"
מציגה למשתמש בקשה לפתוח קובץ קיים או קובץ חדש ומחזירה בהצלחה קובץ FileEntry הניתן לכתיבה. קריאות מהסוג הזה ייכשלו ותוצג שגיאת זמן ריצה אם לאפליקציה אין הרשאת כתיבה בקטע fileSystem.
"openDirectory"
הצגת בקשה למשתמש לפתוח ספרייה והחזרת DirectoryEntry בהצלחה. קריאות מהסוג הזה ייכשלו ויתקבלו שגיאת זמן ריצה אם לאפליקציה אין את ההרשאה 'ספרייה' ב-'fileSystem'. אם לאפליקציה יש הרשאת כתיבה ב-fileSystem, תהיה אפשרות כתיבה ב-DirectoryEntry שהוחזרה; אחרת היא תהיה לקריאה בלבד. חדש ב-Chrome 31.
RequestFileSystemOptions
תכונות
-
volumeId
string
המזהה של הכרך המבוקש.
-
ניתן לכתיבה
בוליאני אופציונלי
האם מערכת הקבצים המבוקשת צריכה להיות ניתנת לכתיבה. ברירת המחדל היא לקריאה בלבד.
Volume
תכונות
-
volumeId
string
-
ניתן לכתיבה
boolean
VolumeListChangedEvent
תכונות
-
כרכים
שיטות
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
)
צריך לבקש מהמשתמש לבחור קובץ או ספרייה.
פרמטרים
-
אפשרויות
ChooseEntryOptions אופציונלי
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(entry?: Entry, fileEntries?: FileEntry[]) => void
-
רשומה
ערך אופציונלי
-
fileEntries
FileEntry[] אופציונלי
-
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
)
קבלת הנתיב לתצוגה של אובייקט רשומה. הנתיב לתצוגה מבוסס על הנתיב המלא של הקובץ או של הספרייה במערכת הקבצים המקומית, אבל ייתכן שהוא יהיה קריא יותר למטרות תצוגה.
פרמטרים
-
רשומה
הערך
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(displayPath: string) => void
-
displayPath
string
-
החזרות
-
הבטחה<string>
Chrome 117 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
)
מחזירה רשימה של כרכים שזמינים עבור requestFileSystem()
. נדרשת הרשאת המניפסט "fileSystem": {"requestFileSystem"}
. האפשרות זמינה רק לאפליקציות "קיוסק" שפועלות בסשן קיוסק. במקרה של שגיאה, המדיניות volumes
לא מוגדרת והמדיניות chrome.runtime.lastError
מוגדרת.
פרמטרים
החזרות
-
Promise<Volume[] | undefined>
Chrome 117 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getWritableEntry()
chrome.fileSystem.getWritableEntry(
entry: Entry,
callback: function,
)
אפשר לקבל רשומה אחרת שניתנת לכתיבה. הקריאה הזו תיכשל ותוצג שגיאת זמן ריצה אם לאפליקציה אין הרשאת כתיבה בקטע 'fileSystem'. אם הרשומה היא DirectoryEntry, הקריאה הזו תיכשל אם לאפליקציה אין את ההרשאה 'ספרייה' ב-'fileSystem'.
פרמטרים
-
רשומה
הערך
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(entry: Entry) => void
-
רשומה
הערך
-
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
)
מחזירה אם לאפליקציה יש הרשאה לשחזר את הרשומה עם המזהה הנתון.
פרמטרים
-
id
string
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(isRestorable: boolean) => void
-
isRestorable
boolean
-
החזרות
-
Promise<boolean>
Chrome 117 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
)
הפונקציה קובעת אם הרשומה הזו ניתנת לכתיבה או לא.
פרמטרים
-
רשומה
הערך
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(isWritable: boolean) => void
-
isWritable
boolean
-
החזרות
-
Promise<boolean>
Chrome 117 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
)
מבקש גישה למערכת קבצים עבור נפח שמיוצג על ידי options.volumeId
. אם המדיניות options.writable
מוגדרת כ-True, מערכת הקבצים תהיה ניתנת לכתיבה. אחרת, המידע יהיה לקריאה בלבד. האפשרות writable
מחייבת את ההרשאה "fileSystem": {"write"}
במניפסט. האפשרות זמינה רק לאפליקציות "קיוסק" שפועלות בסשן קיוסק. במצב קיוסק בהפעלה ידנית, תוצג תיבת דו-שיח לאישור בחלק העליון של חלון האפליקציה הפעילה. במקרה של שגיאה, המדיניות fileSystem
לא מוגדרת והמדיניות chrome.runtime.lastError
מוגדרת.
פרמטרים
-
אפשרויות
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(fileSystem?: FileSystem) => void
-
fileSystem
FileSystem אופציונלי
-
החזרות
-
Promise<FileSystem | undefined>
Chrome 117 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
restoreEntry()
chrome.fileSystem.restoreEntry(
id: string,
callback: function,
)
מחזירה את הערך של הקובץ עם המזהה הנתון אם ניתן לשחזר אותו. אחרת, הקריאה תיכשל ותוצג שגיאת זמן ריצה.
פרמטרים
-
id
string
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(entry: Entry) => void
-
רשומה
הערך
-
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
)
מחזירה מזהה שניתן להעביר כדי לשחזר רשומה כדי לקבל שוב גישה לערך נתון בקובץ. רק 500 הרשומות האחרונות שהיו בשימוש נשמרות, וקריאות ל-keepEntry ולשחזור הן נספרות כשימוש. אם לאפליקציה יש את ההרשאה retainEntries ב-fileSystem, הרשומות יישמרו ללא הגבלת זמן. אחרת, הרשומות יישמרו רק בזמן שהאפליקציה פועלת ובכל פעם שהוא יופעל מחדש.
פרמטרים
-
רשומה
הערך
החזרות
-
string
אירועים
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
השיחה תזוהה כשיש שינוי ברשימה של נפחי אחסון זמינים.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(event: VolumeListChangedEvent) => void
-
אירוע
-