chrome.fileSystem

شرح

از chrome.fileSystem API برای ایجاد، خواندن، پیمایش و نوشتن در سیستم فایل محلی کاربر استفاده کنید. با این API، Chrome Apps می‌تواند در مکانی که کاربر انتخاب کرده است بخواند و بنویسد. به عنوان مثال، یک برنامه ویرایشگر متن می تواند از API برای خواندن و نوشتن اسناد محلی استفاده کند. همه خرابی ها از طریق chrome.runtime.lastError اطلاع رسانی می شود.

مجوزها

fileSystem

دسترسی

فقط پیش زمینه

انواع

AcceptOption

خواص

  • شرح

    رشته اختیاری

    این توضیحات متنی اختیاری برای این گزینه است. اگر وجود نداشته باشد، یک توضیح به طور خودکار ایجاد می شود. معمولاً حاوی لیست گسترده ای از پسوندهای معتبر است (مثلاً "text/html" ممکن است به "*.html، *.htm" گسترش یابد).

  • پسوندها

    رشته[] اختیاری است

    برنامه های افزودنی برای پذیرش، به عنوان مثال "jpg"، "gif"، "crx".

  • mimeTypes

    رشته[] اختیاری است

    انواع Mime برای پذیرش، به عنوان مثال "image/jpeg" یا "audio/*". یکی از mimeType ها یا پسوندها باید حداقل یک عنصر معتبر داشته باشد.

ChooseEntryOptions

خواص

  • می پذیرد

    AcceptOption [] اختیاری است

    لیست اختیاری گزینه های پذیرش برای این بازکننده فایل. هر گزینه به عنوان یک گروه منحصر به فرد به کاربر نهایی ارائه می شود.

  • همه انواع را قبول می کند

    بولی اختیاری

    آیا برای پذیرش همه انواع فایل، علاوه بر گزینه های مشخص شده در آرگومان accepts. پیش فرض درست است. اگر فیلد پذیرش تنظیم نشده باشد یا هیچ ورودی معتبری نداشته باشد، همیشه به درستی بازنشانی می‌شود.

  • چندگانه را می پذیرد

    بولی اختیاری

    آیا چندین فایل را بپذیرید. این فقط برای openFile و openWritableFile پشتیبانی می شود. در صورتی که روی true تنظیم شده باشد، تماس برگشتی به ChoiceEntry با لیستی از ورودی ها فراخوانی می شود. در غیر این صورت با یک ورودی فراخوانی می شود.

  • پیشنهاد نام

    رشته اختیاری

    نام فایل پیشنهادی که به عنوان نام پیش فرض برای خواندن یا نوشتن به کاربر ارائه می شود. این اختیاری است.

  • نوع

    انتخاب EntryType اختیاری است

    اعلان نمایش را تایپ کنید. پیش فرض "openFile" است.

ChooseEntryType

Enum

"openFile"
از کاربر می خواهد یک فایل موجود را باز کند و در صورت موفقیت یک FileEntry برمی گرداند. از Chrome 31 به بعد، در صورتی که برنامه دارای مجوز «نوشتن» در زیر «fileSystem» باشد، FileEntry قابل نوشتن خواهد بود. در غیر این صورت، FileEntry فقط خواندنی خواهد بود.

"openWritableFile"
از کاربر می خواهد یک فایل موجود را باز کند و در صورت موفقیت یک FileEntry قابل نوشتن برمی گرداند. اگر برنامه مجوز «نوشتن» را در «fileSystem» نداشته باشد، تماس‌هایی که از این نوع استفاده می‌کنند با خطای زمان اجرا شکست خواهند خورد.

"saveFile"
از کاربر می خواهد یک فایل موجود یا یک فایل جدید را باز کند و در صورت موفقیت یک FileEntry قابل نوشتن برمی گرداند. اگر برنامه مجوز «نوشتن» را در «fileSystem» نداشته باشد، تماس‌هایی که از این نوع استفاده می‌کنند با خطای زمان اجرا شکست خواهند خورد.

"OpenDirectory"
از کاربر می خواهد یک دایرکتوری را باز کند و در صورت موفقیت یک DirectoryEntry را برمی گرداند. اگر برنامه دارای مجوز «directory» در «fileSystem» نباشد، تماس‌هایی که از این نوع استفاده می‌کنند با خطای زمان اجرا شکست می‌خورند. اگر برنامه دارای مجوز «نوشتن» در «fileSystem» باشد، DirectoryEntry برگشتی قابل نوشتن خواهد بود. در غیر این صورت فقط خواندنی خواهد بود. جدید در کروم 31.

RequestFileSystemOptions

Chrome 44+

خواص

  • شناسه حجم

    رشته

    شناسه جلد درخواستی

  • قابل نوشتن

    بولی اختیاری

    آیا فایل سیستم درخواستی باید قابل نوشتن باشد یا خیر. پیش فرض فقط خواندنی است.

Volume

Chrome 44+

خواص

  • شناسه حجم

    رشته

  • قابل نوشتن

    بولی

VolumeListChangedEvent

Chrome 44+

خواص

مواد و روش ها

chooseEntry()

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

از کاربر بخواهید یک فایل یا دایرکتوری را انتخاب کند.

مولفه های

  • گزینه ها

    انتخاب EntryOptions اختیاری است

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

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

    • ورود

      ورود اختیاری است

    • ورودی های فایل

      FileEntry[] اختیاری است

getDisplayPath()

وعده
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)

مسیر نمایش یک آبجکت Entry را دریافت کنید. مسیر نمایش بر اساس مسیر کامل فایل یا دایرکتوری در سیستم فایل محلی است، اما ممکن است برای اهداف نمایش قابل خواندن باشد.

مولفه های

  • ورود

    ورود

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (displayPath: string)=>void

    • displayPath

      رشته

برمی گرداند

  • قول<رشته>

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

getVolumeList()

Promise Chrome 44+
chrome.fileSystem.getVolumeList(
  callback?: function,
)

فهرستی از حجم های موجود برای requestFileSystem() را برمی گرداند. مجوز مانیفست "fileSystem": {"requestFileSystem"} مورد نیاز است. فقط برای برنامه های کیوسک در حال اجرا در جلسه کیوسک موجود است. در صورت بروز خطا، volumes تعریف نشده و chrome.runtime.lastError تنظیم می شود.

مولفه های

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (volumes?: Volume[])=>void

    • جلدها

      حجم [] اختیاری است

برمی گرداند

  • وعده< جلد []|تعریف نشده>

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

getWritableEntry()

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

یک ورودی قابل نوشتن از ورودی دیگر دریافت کنید. اگر برنامه مجوز "نوشتن" را در "fileSystem" نداشته باشد، این تماس با خطای زمان اجرا ناموفق خواهد بود. اگر ورودی یک DirectoryEntry باشد، اگر برنامه دارای مجوز «directory» در «fileSystem» نباشد، این فراخوانی ناموفق خواهد بود.

مولفه های

  • ورود

    ورود

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (entry: Entry)=>void

    • ورود

      ورود

isRestorable()

وعده
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)

نشان می دهد که آیا برنامه مجوز بازیابی ورودی با شناسه داده شده را دارد یا خیر.

مولفه های

  • شناسه

    رشته

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (isRestorable: boolean)=>void

    • قابل بازیابی است

      بولی

برمی گرداند

  • وعده<boolean>

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

isWritableEntry()

وعده
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)

دریافت می کند که آیا این ورودی قابل نوشتن است یا خیر.

مولفه های

  • ورود

    ورود

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (isWritable: boolean)=>void

    • قابل نوشتن است

      بولی

برمی گرداند

  • وعده<boolean>

    Chrome 117+

    Promises فقط برای Manifest 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 به نظر می رسد:

    (fileSystem?: FileSystem)=>void

    • فایل سیستم

      FileSystem اختیاری است

برمی گرداند

  • Promise<FileSystem|undefined>

    Chrome 117+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

restoreEntry()

chrome.fileSystem.restoreEntry(
  id: string,
  callback: function,
)

در صورت امکان بازیابی، ورودی فایل را با شناسه داده شده برمی گرداند. در غیر این صورت این تماس با خطای زمان اجرا ناموفق خواهد بود.

مولفه های

  • شناسه

    رشته

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (entry: Entry)=>void

    • ورود

      ورود

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)

شناسه‌ای را برمی‌گرداند که می‌توان آن را به restoreEntry ارسال کرد تا دوباره به ورودی فایل معین دسترسی پیدا کند. فقط 500 ورودی که اخیراً استفاده شده است حفظ می‌شوند، جایی که تماس‌های RetainEntry و restoreEntry به عنوان استفاده محسوب می‌شوند. اگر برنامه مجوز «retainEntries» را در «FileSystem» داشته باشد، ورودی‌ها به‌طور نامحدود حفظ می‌شوند. در غیر این صورت، ورودی‌ها فقط در حین اجرای برنامه و در طول راه‌اندازی مجدد، حفظ می‌شوند.

مولفه های

  • ورود

    ورود

برمی گرداند

  • رشته

مناسبت ها

onVolumeListChanged

Chrome 44+
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

هنگامی که فهرستی از حجم های موجود تغییر می کند، فراخوانی می شود.

مولفه های