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 או התוספים חייב להכיל לפחות רכיב חוקי אחד.

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

Chrome 44 ואילך

תכונות

  • volumeId

    מחרוזת

    המזהה של הכרך המבוקש.

  • ניתן לכתיבה

    בוליאני אופציונלי

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

Volume

Chrome 44 ואילך

תכונות

  • volumeId

    מחרוזת

  • ניתן לכתיבה

    boolean

VolumeListChangedEvent

Chrome 44 ואילך

תכונות

שיטות

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>

    Chrome 117 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

getVolumeList()

Promise Chrome 44 ואילך
chrome.fileSystem.getVolumeList(
  callback?: function,
)

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

פרמטרים

  • קריאה חוזרת (callback)

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

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

    (volumes?: Volume[])=>void

החזרות

  • הבטחה<נפח[]|לא מוגדר>

    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

    מחרוזת

  • קריאה חוזרת (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()

Promise Chrome 44 ואילך
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

    מחרוזת

  • קריאה חוזרת (callback)

    פונקציה

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

    (entry: Entry)=>void

    • רשומה

      החלק

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)

מחזירה מזהה שניתן להעביר כדי לשחזר רשומה כדי לקבל שוב גישה לערך נתון בקובץ. רק 500 הרשומות האחרונות שהיו בשימוש נשמרות, וקריאות ל-keepEntry ולשחזור הן נספרות כשימוש. אם לאפליקציה יש את ההרשאה retainEntries ב-fileSystem, הרשומות יישמרו ללא הגבלת זמן. אחרת, הרשומות יישמרו רק בזמן שהאפליקציה פועלת ובכל פעם שהוא יופעל מחדש.

פרמטרים

  • רשומה

    החלק

החזרות

  • מחרוזת

אירועים

onVolumeListChanged

Chrome 44 ואילך
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

השיחה תזוהה כשיש שינוי ברשימה של נפחי אחסון זמינים.

פרמטרים