browser.fileSystemProvider

شرح

از chrome.fileSystemProvider API برای ایجاد سیستم‌های فایل استفاده کنید که ازطریق مدیر فایل در Chrome OS قابل‌دسترسی است.

اجازه‌ها

fileSystemProvider

دردسترس بودن

فقط ChromeOS

برای استفاده از File System Provider API، باید بخش و اجازه «fileSystemProvider» را در مانیفست افزونه اعلام کنید. برای مثال:

{
  "name": "My extension",
  ...
  "permissions": [
    "fileSystemProvider"
  ],
  ...
  "file_system_provider_capabilities": {
    "configurable": true,
    "watchable": false,
    "multiple_mounts": true,
    "source": "network"
  },
  ...
}

بخش file_system_provider باید به‌صورت زیر اعلام شود:

configurable (مقدار منطقی) - اختیاری
آیا پیکربندی ازطریق onConfigureRequested پشتیبانی می‌شود. به‌طور پیش‌فرض: false.
multiple_mounts (مقدار منطقی) - اختیاری
آیا از چندین (بیش‌از یک) سیستم فایل سوارشده پشتیبانی می‌شود. به‌طور پیش‌فرض: false.
watchable (مقدار منطقی) - اختیاری
آیا تنظیم ناظران و اطلاع‌رسانی درباره تغییرات پشتیبانی می‌شود. به‌طور پیش‌فرض: false.
source (enum of "file", "device", or "network") - required
منبع داده برای سیستم‌های فایل سوارشده.

برنامه Files از اطلاعات بالا برای ارائه مناسب عناصر میانای کاربر مربوطه استفاده می‌کند. برای مثال، اگر configurable روی «درست» تنظیم شده باشد، گزینه منو برای پیکربندی حجم‌ها ارائه خواهد شد. به‌طور مشابه، اگر multiple_mounts روی true تنظیم شده باشد، برنامه Files اجازه می‌دهد بیش‌از یک نقطه نصب ازطریق میانای کاربر اضافه شود. اگر watchable false باشد، دکمه بازآوری ارائه خواهد شد. توجه داشته باشید که درصورت امکان باید پشتیبانی از ناظران را اضافه کنید تا تغییرات در سیستم فایل بتواند فوراً و به‌طور خودکار منعکس شود.

نمای کلی

File System Provider API به افزونه‌ها اجازه می‌دهد از سیستم‌های فایل مجازی پشتیبانی کنند که در مدیر فایل در ChromeOS دردسترس هستند. موارد استفاده شامل از حالت فشرده خارج کردن بایگانی‌ها و دسترسی به فایل‌ها در سرویس ابری غیر از Drive است.

درحال سوار کردن سیستم‌های فایل

ارائه افزونه‌ها می‌تواند محتوای سیستم فایل را از منبعی خارجی (مثل سرور راه دور یا دستگاه USB) ارائه دهد یا از فایل محلی (مثل بایگانی) به‌عنوان ورودی استفاده کند.

برای نوشتن سیستم‌های فایل که کنترل‌کننده فایل هستند (منبع "file" است)، ارائه‌دهنده باید برنامه بسته‌بندی‌شده باشد، زیرا رویداد onLaunched برای افزونه‌ها دردسترس نیست.

اگر منبع شبکه یا دستگاه باشد، سیستم فایل باید هنگام فراخوانی رویداد onMountRequested سوار شود.

منبع داده‌های سیستم فایل نقطه ورودی
"file" فقط برای برنامه‌های بسته‌بندی‌شده دردسترس است.
‫"device" یا "network" onMountRequested

درحال پیکربندی سیستم‌های فایل

سیستم‌های فایل ارائه‌شده پس‌از سوار شدن می‌توانند ازطریق رویداد onConfigureRequested پیکربندی شوند. این ویژگی به‌ویژه برای سیستم‌های فایلی که محتوا را ازطریق شبکه ارائه می‌دهند مفید است تا اطلاعات کاربری مناسب را تنظیم کنند. رسیدگی به این رویداد اختیاری است.

چرخه زندگی

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

انواع

AbortRequestedOptions

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • operationRequestId

    شماره

    شناسه درخواستی که باید لغو شود.

  • requestId

    شماره

    شناسه یکتای این درخواست.

Action

Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

مشخصات

  • id

    رشته

    شناسه کنش. هر رشته یا CommonActionId برای کنش‌های رایج.

  • عنوان

    رشته اختیاری

    عنوان کنش. ممکن است برای کنش‌های رایج نادیده گرفته شود.

AddWatcherRequestedOptions

مشخصات

  • entryPath

    رشته

    مسیر ورودی که باید مشاهده شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    اینکه آیا مشاهده باید شامل همه ورودی‌های فرزند به‌صورت بازگشتی باشد یا نه. این مورد فقط برای دایرکتوری‌ها می‌تواند درست باشد.

  • requestId

    شماره

    شناسه یکتای این درخواست.

Change

مشخصات

  • changeType

    نوع تغییری که در ورودی اتفاق افتاده است.

  • cloudFileInfo

    CloudFileInfo اختیاری

    Chrome نسخه ۱۲۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اطلاعات مربوط به فایل درصورت پشتیبان‌گیری توسط سیستم فایل ابری.

  • entryPath

    رشته

    مسیر ورودی تغییریافته.

ChangeType

نوع تغییر شناسایی‌شده در دایرکتوری مشاهده‌شده.

شمارشی

«تغییریافته»

«DELETED»

CloseFileRequestedOptions

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • openRequestId

    شماره

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

  • requestId

    شماره

    شناسه یکتای این درخواست.

CloudFileInfo

Chrome نسخه ۱۲۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

مشخصات

  • versionTag

    رشته اختیاری

    برچسبی که نشان‌دهنده نسخه فایل است.

CloudIdentifier

Chrome نسخه ۱۱۷ و بالاتر browser.* ‎ از Chrome نسخه ۱۴۸

مشخصات

  • id

    رشته

    شناسه ارائه‌دهنده برای فایل/دایرکتوری ارائه‌شده.

  • providerName

    رشته

    شناسه ارائه‌دهنده فضای ذخیره‌سازی ابری (مثلاً «drive.google.com»).

CommonActionId

Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

فهرست کنش‌های رایج. "SHARE" برای هم‌رسانی فایل با دیگران است. "SAVE_FOR_OFFLINE" برای سنجاق کردن (ذخیره کردن برای دسترسی آفلاین). "OFFLINE_NOT_NECESSARY" برای اطلاع دادن اینکه فایل دیگر نیازی به ذخیره شدن برای دسترسی آفلاین ندارد. استفاده‌شده توسط onGetActionsRequested و onExecuteActionRequested.

شمارشی

"SAVE_FOR_OFFLINE"

"OFFLINE_NOT_NECESSARY"

«هم‌رسانی»

ConfigureRequestedOptions

Chrome نسخه ۴۴ و بالاتر browser.* از Chrome نسخه ۱۴۸

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل برای پیکربندی.

  • requestId

    شماره

    شناسه یکتای این درخواست.

CopyEntryRequestedOptions

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • requestId

    شماره

    شناسه یکتای این درخواست.

  • sourcePath

    رشته

    مسیر منبع ورودی که باید کپی شود.

  • targetPath

    رشته

    مسیر مقصد برای عملیات کپی کردن.

CreateDirectoryRequestedOptions

مشخصات

  • directoryPath

    رشته

    مسیر دایرکتوری‌ای که باید ایجاد شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    اینکه عملیات بازگشتی است یا نه (فقط برای دایرکتوری‌ها).

  • requestId

    شماره

    شناسه یکتای این درخواست.

CreateFileRequestedOptions

مشخصات

  • filePath

    رشته

    مسیر فایلی که باید ایجاد شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • requestId

    شماره

    شناسه یکتای این درخواست.

DeleteEntryRequestedOptions

مشخصات

  • entryPath

    رشته

    مسیر ورودی‌ای که باید حذف شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    اینکه عملیات بازگشتی است یا نه (فقط برای دایرکتوری‌ها).

  • requestId

    شماره

    شناسه یکتای این درخواست.

EntryMetadata

مشخصات

  • cloudFileInfo

    CloudFileInfo اختیاری

    Chrome نسخه ۱۲۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

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

  • cloudIdentifier

    CloudIdentifier اختیاری

    Chrome نسخه ۱۱۷ و بالاتر browser.* ‎ از Chrome نسخه ۱۴۸

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

  • isDirectory

    بولی اختیاری

    اگر دایرکتوری باشد، «درست» است. اگر در options درخواست شود، باید ارائه شود.

  • mimeType

    رشته اختیاری

    نوع رسانه برای ورودی. همیشه اختیاری است، اما اگر در options درخواست شود باید ارائه شود.

  • modificationTime

    تاریخ اختیاری

    زمان آخرین اصلاح این ورودی. اگر در options درخواست شود، باید ارائه شود.

  • نام

    رشته اختیاری

    نام این ورودی (نه نام کامل مسیر). نباید حاوی «/» باشد. برای ریشه باید خالی باشد. اگر در options درخواست شود، باید ارائه شود.

  • اندازه

    شماره اختیاری

    اندازه فایل به بایت. اگر در options درخواست شود، باید ارائه شود.

  • ریزعکس

    رشته اختیاری

    تصویر کوچک به‌عنوان شناسه منبع یکسان داده در قالب PNG،‏ JPEG، یا WEBP، با حداکثر اندازه ۳۲ کیلوبایت. اختیاری است، اما فقط زمانی می‌تواند ارائه شود که صریحاً توسط رویداد onGetMetadataRequested درخواست شده باشد.

ExecuteActionRequestedOptions

Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

مشخصات

  • actionId

    رشته

    شناسه کنشی که باید اجرا شود.

  • entryPaths

    string[]

    Chrome نسخه ۴۷ و بالاتر browser.* ‎ از Chrome نسخه ۱۴۸

    مجموعه مسیرهای ورودی‌هایی که برای کنش استفاده می‌شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • requestId

    شماره

    شناسه یکتای این درخواست.

FileSystemInfo

مشخصات

  • displayName

    رشته

    نامی قابل‌خواندن برای انسان برای سیستم فایل.

  • fileSystemId

    رشته

    شناسه سیستم فایل.

  • openedFiles

    فهرست فایل‌های بازشده فعلی.

  • openedFilesLimit

    شماره

    حداکثر تعداد فایل‌هایی که می‌توانند به‌طور هم‌زمان باز شوند. اگر ۰ باشد، محدود نیست.

  • supportsNotifyTag

    بولی اختیاری

    Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

    آیا سیستم فایل از فیلد tag برای مشاهده دایرکتوری‌ها پشتیبانی می‌کند یا نه.

  • تماشاگران
    Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

    فهرست ناظران.

  • قابل‌نوشتن

    بولی

    اینکه آیا سیستم فایل از عملیاتی که ممکن است محتوای سیستم فایل را تغییر دهد (مانند ایجاد، حذف، یا نوشتن در فایل‌ها) پشتیبانی می‌کند یا نه.

GetActionsRequestedOptions

Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

مشخصات

  • entryPaths

    string[]

    Chrome نسخه ۴۷ و بالاتر browser.* ‎ از Chrome نسخه ۱۴۸

    فهرست مسیرهای ورودی‌ها برای فهرست کنش‌ها.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • requestId

    شماره

    شناسه یکتای این درخواست.

GetMetadataRequestedOptions

مشخصات

  • cloudFileInfo

    بولی

    Chrome نسخه ۱۲۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار cloudFileInfo درخواست شده است، روی true تنظیم کنید.

  • cloudIdentifier

    بولی

    Chrome نسخه ۱۱۷ و بالاتر browser.* ‎ از Chrome نسخه ۱۴۸

    اگر مقدار cloudIdentifier درخواست شده است، روی true تنظیم کنید.

  • entryPath

    رشته

    مسیر ورودی برای واکشی فراداده مربوطه.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • isDirectory

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار is_directory درخواست شده است، روی true تنظیم کنید.

  • mimeType

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار mimeType درخواست شده است، روی true تنظیم کنید.

  • modificationTime

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار modificationTime درخواست شده است، روی true تنظیم کنید.

  • نام

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار name درخواست شده است، روی true تنظیم کنید.

  • requestId

    شماره

    شناسه یکتای این درخواست.

  • اندازه

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار size درخواست شده است، روی true تنظیم کنید.

  • ریزعکس

    بولی

    اگر مقدار thumbnail درخواست شده است، روی true تنظیم کنید.

MountOptions

مشخصات

  • displayName

    رشته

    نامی قابل‌خواندن برای انسان برای سیستم فایل.

  • fileSystemId

    رشته

    شناسه رشته‌ای سیستم فایل. باید برای هر افزونه یکتا باشد.

  • openedFilesLimit

    شماره اختیاری

    حداکثر تعداد فایل‌هایی که می‌توانند به‌طور هم‌زمان باز شوند. اگر مشخص نشده باشد یا ۰ باشد، محدودیتی وجود ندارد.

  • دائمی

    بولی اختیاری

    Chrome نسخه ۶۴ و بالاتر browser.* ‎ از Chrome نسخه ۱۴۸

    آیا چارچوب باید سیستم فایل را در جلسه ورود به سیستم بعدی ازسر بگیرد یا نه. به‌طور پیش‌فرض درست است.

  • supportsNotifyTag

    بولی اختیاری

    Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اینکه آیا سیستم فایل از فیلد tag برای دایرکتوری‌های مشاهده‌شده پشتیبانی می‌کند یا نه.

  • قابل‌نوشتن

    بولی اختیاری

    اینکه آیا سیستم فایل از عملیاتی که ممکن است محتوای سیستم فایل را تغییر دهد (مانند ایجاد، حذف، یا نوشتن در فایل‌ها) پشتیبانی می‌کند یا نه.

MoveEntryRequestedOptions

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • requestId

    شماره

    شناسه یکتای این درخواست.

  • sourcePath

    رشته

    مسیر منبع ورودی که باید به مکان جدیدی منتقل شود.

  • targetPath

    رشته

    مسیر مقصد برای عملیات کپی کردن.

NotifyOptions

مشخصات

  • changeType

    نوع تغییری که برای ورودی مشاهده‌شده اتفاق افتاده است. اگر «حذف‌شده» باشد، ورودی مشاهده‌شده به‌طور خودکار از فهرست ورودی‌های مشاهده‌شده برداشته خواهد شد.

  • تغییرات

    تغییر[] اختیاری

    فهرست تغییرات ورودی‌ها در دایرکتوری مشاهده‌شده (ازجمله خود ورودی)

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این تغییر.

  • observedPath

    رشته

    مسیر ورودی مشاهده‌شده.

  • بازگشتی

    بولی

    حالت ورودی مشاهده‌شده.

  • برچسب

    رشته اختیاری

    برچسب اعلان. اگر سیستم فایل با گزینه supportsNotifyTag سوار شده باشد، الزامی است. توجه داشته باشید که این پرچم برای ارائه اعلان درباره تغییراتی که حتی هنگام خاموش بودن سیستم تغییر کرده‌اند ضروری است.

OpenedFile

مشخصات

  • filePath

    رشته

    مسیر فایل بازشده.

  • حالت حمل‌ونقل

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

  • openRequestId

    شماره

    شناسه درخواستی که باید توسط درخواست‌های خواندن/نوشتن و بستن متوالی استفاده شود.

OpenFileMode

حالت باز کردن فایل. مورداستفاده onOpenFileRequested.

شمارشی

«READ»

«نوشتن»

OpenFileRequestedOptions

مشخصات

  • filePath

    رشته

    مسیر فایلی که باید باز شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • حالت حمل‌ونقل

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

  • requestId

    شماره

    شناسه درخواستی که توسط درخواست‌های خواندن/نوشتن و بستن متوالی استفاده خواهد شد.

ProviderError

کدهای خطایی که با ارائه افزونه‌ها در پاسخ به درخواست‌ها و همچنین درصورت بروز خطا هنگام فراخوانی روش‌های میانای برنامه‌سازی کاربردی استفاده می‌شود. برای موفقیت، باید از "OK" استفاده شود.

شمارشی

«تأیید»

"FAILED"

«IN_USE»

"EXISTS"

«NOT_FOUND»

"ACCESS_DENIED"

"TOO_MANY_OPENED"

"NO_MEMORY"

"NO_SPACE"

"NOT_A_DIRECTORY"

"INVALID_OPERATION"

«امنیت»

«لغو»

"NOT_A_FILE"

"NOT_EMPTY"

«INVALID_URL»

«IO»

ReadDirectoryRequestedOptions

مشخصات

  • directoryPath

    رشته

    مسیر دایرکتوری که محتوای آن درخواست شده است.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • isDirectory

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار is_directory درخواست شده است، روی true تنظیم کنید.

  • mimeType

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار mimeType درخواست شده است، روی true تنظیم کنید.

  • modificationTime

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار modificationTime درخواست شده است، روی true تنظیم کنید.

  • نام

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار name درخواست شده است، روی true تنظیم کنید.

  • requestId

    شماره

    شناسه یکتای این درخواست.

  • اندازه

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار size درخواست شده است، روی true تنظیم کنید.

  • ریزعکس

    بولی

    Chrome نسخه ۴۹ و بالاتر browser.* از Chrome نسخه ۱۴۸

    اگر مقدار thumbnail درخواست شده است، روی true تنظیم کنید.

ReadFileRequestedOptions

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • طول

    شماره

    تعداد بایت‌هایی که باید برگردانده شود.

  • جبران کردن

    شماره

    موقعیت در فایل (به بایت) برای شروع خواندن از آن.

  • openRequestId

    شماره

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

  • requestId

    شماره

    شناسه یکتای این درخواست.

RemoveWatcherRequestedOptions

مشخصات

  • entryPath

    رشته

    مسیر ورودی تماشاشده.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • بازگشتی

    بولی

    حالت ناظر.

  • requestId

    شماره

    شناسه یکتای این درخواست.

TruncateRequestedOptions

مشخصات

  • filePath

    رشته

    مسیر فایلی که باید کوتاه شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • طول

    شماره

    تعداد بایت‌هایی که باید پس‌از تکمیل عملیات حفظ شوند.

  • requestId

    شماره

    شناسه یکتای این درخواست.

UnmountOptions

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل برای لغو نصب.

UnmountRequestedOptions

مشخصات

  • fileSystemId

    رشته

    شناسه سیستم فایل برای لغو نصب.

  • requestId

    شماره

    شناسه یکتای این درخواست.

Watcher

مشخصات

  • entryPath

    رشته

    مسیر ورودی درحال مشاهده.

  • lastTag

    رشته اختیاری

    برچسبی که آخرین اعلان برای ناظر استفاده کرده است.

  • بازگشتی

    بولی

    اینکه آیا تماشا باید شامل همه ورودی‌های فرزند به‌صورت بازگشتی باشد یا نه. این مورد فقط برای دایرکتوری‌ها می‌تواند درست باشد.

WriteFileRequestedOptions

مشخصات

  • داده

    ArrayBuffer

    بافر بایت‌هایی که باید در فایل نوشته شود.

  • fileSystemId

    رشته

    شناسه سیستم فایل مربوط به این عملیات.

  • جبران کردن

    شماره

    موقعیت در فایل (به بایت) برای شروع نوشتن بایت‌ها از آن.

  • openRequestId

    شماره

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

  • requestId

    شماره

    شناسه یکتای این درخواست.

روش‌ها

get()

browser.fileSystemProvider.get(
  fileSystemId: string,
)
: Promise<FileSystemInfo>

اطلاعات مربوط به سیستم فایل را با fileSystemId ارسال‌شده برمی‌گرداند.

پارامترها

  • fileSystemId

    رشته

بازگشتی‌ها

  • Chrome نسخه ۹۶ و بالاتر browser.* از Chrome نسخه ۱۴۸

    فراخوانی برگشتی برای دریافت نتیجه تابع get.

getAll()

browser.fileSystemProvider.getAll(): Promise<FileSystemInfo[]>

همه سیستم‌های فایل سوارشده توسط افزونه را برمی‌گرداند.

بازگشتی‌ها

  • Promise<FileSystemInfo[]>

    Chrome نسخه ۹۶ و بالاتر browser.* از Chrome نسخه ۱۴۸

    فراخوانی برگشتی برای دریافت نتیجه تابع getAll.

mount()

browser.fileSystemProvider.mount(
  options: MountOptions,
)
: Promise<void>

سیستم فایلی را با fileSystemId و displayName داده‌شده سوار می‌کند. ‫displayName در پانل سمت راست برنامه Files نشان داده خواهد شد. displayName می‌تواند حاوی هر نویسه‌ای ازجمله «/» باشد، اما نمی‌تواند رشته‌ای خالی باشد. displayName باید توصیفی باشد اما لازم نیست منحصربه‌فرد باشد. fileSystemId نباید رشته خالی باشد.

بسته به نوع سیستم فایل درحال سوار شدن، گزینه source باید به‌درستی تنظیم شود.

درصورت بروز خطا، runtime.lastError با کد خطای مربوطه تنظیم خواهد شد.

پارامترها

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۹۶ و بالاتر browser.* از Chrome نسخه ۱۴۸

    یک فراخوانی برگشتی نتیجه عمومی برای نشان دادن موفقیت یا شکست.

notify()

Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸
browser.fileSystemProvider.notify(
  options: NotifyOptions,
)
: Promise<void>

درباره تغییرات در دایرکتوری تحت‌نظر در observedPath در حالت recursive اطلاع می‌دهد. اگر سیستم فایل با supportsNotifyTag سوار شده باشد، باید tag ارائه شود و همه تغییرات از آخرین اعلان همیشه گزارش شود، حتی اگر سیستم خاموش شده باشد. آخرین برچسب را می‌توان با getAll دریافت کرد.

برای استفاده، گزینه مانیفست file_system_provider.notify باید روی «درست» تنظیم شود.

مقدار tag می‌تواند هر رشته‌ای باشد که برای هر تماس منحصربه‌فرد است، بنابراین می‌توان آخرین اعلان ثبت‌شده را شناسایی کرد. برای مثال، اگر افزونه ارائه‌دهنده پس‌از بازراه‌اندازی شروع شود و برچسب آخرین اعلان ثبت‌شده برابر با «۱۲۳» باشد، باید notify را برای همه تغییراتی که از زمان تغییر برچسب‌گذاری‌شده به‌عنوان «۱۲۳» رخ داده است فراخوانی کند. نمی‌تواند رشته خالی باشد.

همه ارائه‌دهندگان نمی‌توانند برچسب ارائه دهند، اما اگر سیستم فایل دارای گزارش تغییرات باشد، برچسب می‌تواند مثلاً شماره تغییر یا شماره بازبینی باشد.

توجه داشته باشید که اگر دایرکتوری والد برداشته شود، همه ورودی‌های فرزند نیز برداشته می‌شوند و اگر تحت نظارت باشند، API باید از این موضوع مطلع شود. همچنین، اگر نام فهرست راهنمایی تغییر کند، همه ورودی‌های زیرمجموعه آن درواقع برداشته می‌شوند، زیرا دیگر ورودی‌ای در مسیرهای اصلی آن‌ها وجود ندارد.

درصورت بروز خطا، runtime.lastError با کد خطای مربوطه تنظیم خواهد شد.

پارامترها

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۹۶ و بالاتر browser.* از Chrome نسخه ۱۴۸

    یک فراخوانی برگشتی نتیجه عمومی برای نشان دادن موفقیت یا شکست.

unmount()

browser.fileSystemProvider.unmount(
  options: UnmountOptions,
)
: Promise<void>

سیستم فایل را با fileSystemId داده‌شده جدا می‌کند. باید بعداز فراخوانی onUnmountRequested فراخوانده شود. همچنین، افزونه ارائه‌دهنده می‌تواند تصمیم بگیرد که درصورت عدم درخواست (مثلاً درصورت قطع اتصال یا خطای فایل) جداسازی را انجام دهد.

درصورت بروز خطا، runtime.lastError با کد خطای مربوطه تنظیم خواهد شد.

پارامترها

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۹۶ و بالاتر browser.* از Chrome نسخه ۱۴۸

    یک فراخوانی برگشتی نتیجه عمومی برای نشان دادن موفقیت یا شکست.

رویدادها

onAbortRequested

browser.fileSystemProvider.onAbortRequested.addListener(
  callback: function,
)

وقتی لغو عملیات با operationRequestId درخواست شود، این خطا ایجاد می‌شود. عملیات اجراشده با operationRequestId باید فوراً متوقف شود و successCallback این درخواست لغو اجرا شود. اگر لغو کردن ناموفق بود، باید errorCallback فراخوانی شود. توجه داشته باشید که فراخوانی‌های برگشتی عملیات لغوشده نباید فراخوانی شوند، زیرا نادیده گرفته خواهند شد. باوجود فراخوانی errorCallback، ممکن است درخواست به‌اجبار لغو شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: AbortRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onAddWatcherRequested

Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸
browser.fileSystemProvider.onAddWatcherRequested.addListener(
  callback: function,
)

وقتی درخواست تنظیم ناظر دایرکتوری جدیدی داده می‌شود، این رویداد ایجاد می‌شود. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: AddWatcherRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onCloseFileRequested

browser.fileSystemProvider.onCloseFileRequested.addListener(
  callback: function,
)

وقتی مطرح می‌شود که باز کردن فایلی که قبلاً با openRequestId باز شده است درخواست بسته شدن داشته باشد.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: CloseFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onConfigureRequested

Chrome نسخه ۴۴ و بالاتر browser.* از Chrome نسخه ۱۴۸
browser.fileSystemProvider.onConfigureRequested.addListener(
  callback: function,
)

وقتی درخواست نمایش کادر گفتگوی پیکربندی برای fileSystemId مطرح می‌شود، این رویداد فعال می‌شود. اگر مدیریت می‌شود، گزینه مانیفست file_system_provider.configurable باید روی true تنظیم شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: ConfigureRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onCopyEntryRequested

browser.fileSystemProvider.onCopyEntryRequested.addListener(
  callback: function,
)

وقتی کپی کردن ورودی (به‌صورت بازگشتی اگر دایرکتوری باشد) درخواست شود، این رویداد برانگیخته می‌شود. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: CopyEntryRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onCreateDirectoryRequested

browser.fileSystemProvider.onCreateDirectoryRequested.addListener(
  callback: function,
)

وقتی ایجاد دایرکتوری درخواست شود، این رویداد فعال می‌شود. اگر فهرست راهنمای هدف ازقبل وجود داشته باشد، عملیات باید با خطای EXISTS ناموفق شود. اگر recursive درست باشد، همه دایرکتوری‌های مفقود در مسیر دایرکتوری باید ایجاد شوند.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: CreateDirectoryRequestedOptions, successCallback: function, errorCallback: function) => void

    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onCreateFileRequested

browser.fileSystemProvider.onCreateFileRequested.addListener(
  callback: function,
)

وقتی ایجاد فایل درخواست شود، این رویداد فعال می‌شود. اگر فایل ازقبل وجود داشته باشد، errorCallback باید با کد خطای "EXISTS" فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: CreateFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onDeleteEntryRequested

browser.fileSystemProvider.onDeleteEntryRequested.addListener(
  callback: function,
)

وقتی درخواست حذف ورودی داده می‌شود، این رویداد فعال می‌شود. اگر recursive درست باشد و ورودی یک دایرکتوری باشد، همه ورودی‌های داخل آن نیز باید به‌صورت بازگشتی حذف شوند.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: DeleteEntryRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onExecuteActionRequested

Chrome نسخه ۴۸ و بالاتر browser.* از Chrome نسخه ۱۴۸
browser.fileSystemProvider.onExecuteActionRequested.addListener(
  callback: function,
)

وقتی اجرای کنشی برای مجموعه‌ای از فایل‌ها یا دایرکتوری‌ها درخواست می‌شود، این خطا ایجاد می‌شود. پس‌از تکمیل کنش، باید successCallback فراخوانی شود. درصورت بروز خطا، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: ExecuteActionRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onGetActionsRequested

Chrome نسخه ۴۸ و بالاتر browser.* از Chrome نسخه ۱۴۸
browser.fileSystemProvider.onGetActionsRequested.addListener(
  callback: function,
)

وقتی فهرست کنش‌ها برای مجموعه‌ای از فایل‌ها یا دایرکتوری‌ها در entryPaths درخواست شود، این رویداد ایجاد می‌شود. همه کنش‌های برگردانده‌شده باید برای هر ورودی قابل‌اجرا باشند. اگر چنین کنش‌هایی وجود ندارد، باید آرایه خالی برگردانده شود. کنش‌ها باید با تماس successCallback برگردانده شود. درصورت بروز خطا، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: GetActionsRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      (actions: Action[]) => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onGetMetadataRequested

browser.fileSystemProvider.onGetMetadataRequested.addListener(
  callback: function,
)

وقتی فراداده فایل یا دایرکتوری در entryPath درخواست شود، این رویداد فعال می‌شود. فراداده باید با تماس successCallback برگردانده شود. درصورت بروز خطا، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: GetMetadataRequestedOptions, successCallback: function, errorCallback: function) => void

onMountRequested

Chrome نسخه ۴۴ و بالاتر browser.* از Chrome نسخه ۱۴۸
browser.fileSystemProvider.onMountRequested.addListener(
  callback: function,
)

وقتی نمایش کادر گفتگویی برای سوار کردن سیستم فایل جدید درخواست شود، این رویداد برانگیخته می‌شود. اگر افزونه/برنامه یک کنترل‌کننده فایل باشد، این رویداد نباید کنترل شود. درعوض، app.runtime.onLaunched باید به‌گونه‌ای مدیریت شود که هنگام باز شدن فایل، سیستم‌های فایل جدید سوار شوند. برای چند بار سوار کردن، گزینه مانیفست file_system_provider.multiple_mounts باید روی درست تنظیم شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (successCallback: function, errorCallback: function) => void

    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onMoveEntryRequested

browser.fileSystemProvider.onMoveEntryRequested.addListener(
  callback: function,
)

وقتی درخواست انتقال ورودی (به‌صورت بازگشتی اگر دایرکتوری باشد) داده می‌شود، این رویداد فعال می‌شود. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: MoveEntryRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onOpenFileRequested

browser.fileSystemProvider.onOpenFileRequested.addListener(
  callback: function,
)

وقتی باز کردن فایل در filePath درخواست شود، این رویداد ایجاد می‌شود. اگر فایل وجود نداشته باشد، عملیات باید ناموفق باشد. حداکثر تعداد فایل‌هایی که می‌توانند به‌طور هم‌زمان باز شوند را می‌توان با MountOptions مشخص کرد.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: OpenFileRequestedOptions, successCallback: function, errorCallback: function) => void

onReadDirectoryRequested

browser.fileSystemProvider.onReadDirectoryRequested.addListener(
  callback: function,
)

وقتی محتوای دایرکتوری در directoryPath درخواست شود، این خطا ایجاد می‌شود. نتایج باید با چندبار فراخوانی successCallback به‌صورت تکه‌تکه برگردانده شود. درصورت بروز خطا، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: ReadDirectoryRequestedOptions, successCallback: function, errorCallback: function) => void

onReadFileRequested

browser.fileSystemProvider.onReadFileRequested.addListener(
  callback: function,
)

وقتی خواندن محتوای فایلی که قبلاً با openRequestId باز شده است درخواست شود، این خطا ایجاد می‌شود. نتایج باید با چند بار فراخوانی successCallback به‌صورت تکه‌تکه برگردانده شود. درصورت بروز خطا، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: ReadFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      (data: ArrayBuffer, hasMore: boolean) => void

      • داده

        ArrayBuffer

      • hasMore

        بولی

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onRemoveWatcherRequested

Chrome نسخه ۴۵ و بالاتر browser.* از Chrome نسخه ۱۴۸
browser.fileSystemProvider.onRemoveWatcherRequested.addListener(
  callback: function,
)

وقتی ناظر باید برداشته شود، این رویداد فعال می‌شود. اگر خطایی رخ دهد، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: RemoveWatcherRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onTruncateRequested

browser.fileSystemProvider.onTruncateRequested.addListener(
  callback: function,
)

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

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: TruncateRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onUnmountRequested

browser.fileSystemProvider.onUnmountRequested.addListener(
  callback: function,
)

وقتی لغو سوار کردن برای سیستم فایل با شناسه fileSystemId درخواست شود، این رویداد برانگیخته می‌شود. در پاسخ، روش میانای برنامه‌سازی کاربردی unmount باید همراه با successCallback فراخوانی شود. اگر لغو نصب امکان‌پذیر نباشد (مثلاً به‌دلیل عملیات معلق)، باید errorCallback فراخوانی شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: UnmountRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void

onWriteFileRequested

browser.fileSystemProvider.onWriteFileRequested.addListener(
  callback: function,
)

وقتی نوشتن محتوا در فایلی که قبلاً با openRequestId باز شده است درخواست شود، این خطا ایجاد می‌شود.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (options: WriteFileRequestedOptions, successCallback: function, errorCallback: function) => void

    • گزینه‌ها
    • successCallback

      عملکرد

      پارامتر successCallback به‌صورت زیر است:

      () => void

    • errorCallback

      عملکرد

      پارامتر errorCallback به‌صورت زیر است:

      (error: ProviderError) => void