chrome.fileSystem

תיאור

משתמשים ב-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

    ‫boolean אופציונלי

    האם לקבל את כל סוגי הקבצים, בנוסף לאפשרויות שצוינו בארגומנט accepts. ברירת המחדל היא true. אם השדה accepts לא מוגדר או לא מכיל ערכים תקינים, הוא תמיד יאופס ל-true.

  • acceptsMultiple

    ‫boolean אופציונלי

    האם לאפשר קבלת מספר קבצים. האפשרות הזו נתמכת רק בפונקציות openFile ו-openWritableFile. אם הערך מוגדר כ-true, הקריאה החוזרת אל chooseEntry תתבצע עם רשימה של רשומות. אחרת, היא תופעל עם רשומה אחת.

  • suggestedName

    מחרוזת אופציונלי

    שם הקובץ המוצע שיוצג למשתמש כשם ברירת המחדל לקריאה או לכתיבה. הפעולה הזאת אופציונלית.

  • סוג

    ChooseEntryType אופציונלי

    סוג ההודעה שמוצגת. ברירת המחדל היא openFile.

ChooseEntryType

Enum

openFile
מציג למשתמש בקשה לפתוח קובץ קיים ומחזיר FileEntry אם הפעולה הצליחה. מגרסה 31 של Chrome ואילך, אפשר יהיה לכתוב ב-FileEntry אם לאפליקציה יש הרשאת 'כתיבה' בקטע 'fileSystem'. אחרת, ה-FileEntry יהיה לקריאה בלבד.

openWritableFile
מציג למשתמש בקשה לפתוח קובץ קיים ומחזיר FileEntry שניתן לכתיבה אם הפעולה הצליחה. קריאות באמצעות הסוג הזה ייכשלו עם שגיאת זמן ריצה אם לאפליקציה אין הרשאת כתיבה בקטע fileSystem.

"saveFile"
מציג למשתמש בקשה לפתוח קובץ קיים או קובץ חדש, ומחזיר FileEntry שניתן לכתיבה אם הפעולה מצליחה. קריאות באמצעות הסוג הזה ייכשלו עם שגיאת זמן ריצה אם לאפליקציה אין הרשאת כתיבה בקטע fileSystem.

openDirectory
מציג למשתמש הנחיה לפתוח ספרייה ומחזיר DirectoryEntry אם הפעולה הצליחה. אם לאפליקציה אין הרשאת 'ספרייה' בקטע 'מערכת קבצים', שיחות שמשתמשות בסוג הזה ייכשלו עם שגיאת זמן ריצה. אם לאפליקציה יש הרשאת כתיבה בקטע fileSystem, אפשר יהיה לכתוב ב-DirectoryEntry שיוחזר. אחרת, הוא יהיה לקריאה בלבד. חדש ב-Chrome 31.

RequestFileSystemOptions

Chrome 44 ואילך

מאפיינים

  • volumeId

    מחרוזת

    המזהה של נפח האחסון המבוקש.

  • ניתן לכתיבה

    ‫boolean אופציונלי

    האם מערכת הקבצים המבוקשת צריכה להיות ניתנת לכתיבה. ברירת המחדל היא קריאה בלבד.

Volume

Chrome 44 ואילך

מאפיינים

  • volumeId

    מחרוזת

  • ניתן לכתיבה

    בוליאני

VolumeListChangedEvent

Chrome 44 ואילך

מאפיינים

Methods

chooseEntry()

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

מבקשים מהמשתמש לבחור קובץ או ספרייה.

פרמטרים

  • options

    ChooseEntryOptions אופציונלי

  • callback

    פונקציה

    הפרמטר callback נראה כך:

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

    • ערך

      ערך אופציונלי

    • fileEntries

      ‫FileEntry[] אופציונלי

getDisplayPath()

Promise
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)
: Promise<string>

אחזור הנתיב לתצוגה של אובייקט Entry. נתיב התצוגה מבוסס על הנתיב המלא של הקובץ או הספרייה במערכת הקבצים המקומית, אבל יכול להיות שהוא יוצג בצורה קריאה יותר.

פרמטרים

  • ערך

    הערך

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (displayPath: string) => void

    • displayPath

      מחרוזת

החזרות

  • Promise<string>

    Chrome 117 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

getVolumeList()

Promise Chrome 44+
chrome.fileSystem.getVolumeList(
  callback?: function,
)
: Promise<Volume[] | undefined>

מחזירה רשימה של כרכים שזמינים ל-requestFileSystem(). נדרשת הרשאת המניפסט "fileSystem": {"requestFileSystem"}. ההגדרה זמינה רק לאפליקציות קיוסק שפועלות בסשן קיוסק. במקרה של שגיאה, הערך של volumes יהיה לא מוגדר, והערך של chrome.runtime.lastError יוגדר.

פרמטרים

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (volumes?: Volume[]) => void

    • כרכים

      Volume[] אופציונלי

החזרות

  • ‫Promise<Volume[] | undefined>

    Chrome 117 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

getWritableEntry()

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

קבלת רשומה שאפשר לכתוב בה מרשומה אחרת. הקריאה הזו תיכשל עם שגיאת זמן ריצה אם לאפליקציה אין הרשאת 'כתיבה' בקטע 'fileSystem'. אם הרשומה היא DirectoryEntry, הקריאה הזו תיכשל אם לאפליקציה אין הרשאת 'ספרייה' בקטע 'מערכת קבצים'.

פרמטרים

  • ערך

    הערך

  • callback

    פונקציה

    הפרמטר callback נראה כך:

    (entry: Entry) => void

    • ערך

      הערך

isRestorable()

Promise
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)
: Promise<boolean>

הפונקציה מחזירה את הערך true אם לאפליקציה יש הרשאה לשחזר את הרשומה עם המזהה הנתון, אחרת היא מחזירה את הערך false.

פרמטרים

  • id [מזהה]

    מחרוזת

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (isRestorable: boolean) => void

    • isRestorable

      בוליאני

החזרות

  • Promise<boolean>

    Chrome 117 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

isWritableEntry()

Promise
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)
: Promise<boolean>

מחזירה אם אפשר לכתוב ב-Entry הזה או לא.

פרמטרים

  • ערך

    הערך

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (isWritable: boolean) => void

    • isWritable

      בוליאני

החזרות

  • Promise<boolean>

    Chrome 117 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

requestFileSystem()

Promise Chrome 44+
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)
: Promise<FileSystem | undefined>

בקשת גישה למערכת קבצים לנפח שמיוצג על ידי options.volumeId. אם options.writable מוגדר כ-True, אפשר יהיה לכתוב במערכת הקבצים. אחרת, הוא יהיה לקריאה בלבד. האפשרות writable דורשת את ההרשאה "fileSystem": {"write"} במניפסט. ההגדרה זמינה רק לאפליקציות קיוסק שפועלות בסשן קיוסק. במצב קיוסק עם הפעלה ידנית, תוצג תיבת דו-שיח לאישור מעל חלון האפליקציה הפעילה. במקרה של שגיאה, הערך של fileSystem יהיה לא מוגדר, והערך של chrome.runtime.lastError יוגדר.

פרמטרים

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (fileSystem?: FileSystem) => void

    • fileSystem

      FileSystem אופציונלי

החזרות

  • Promise<FileSystem | undefined>

    Chrome 117 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

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 44 ואילך
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

הקריאה מתבצעת כשמשתנה רשימת הכרכים הזמינים.

פרמטרים