پرش به مطلب اصلی

مانیفست منبع وب

شناسهٔ شِما: web-resource-manifest@1 شِمای قابل‌خواندن توسط ماشین: web-resource-manifest.schema.json

توصیف مرجع فراداده‌های یک منبع وب (بخش 6.15): فایلی از برنامه — JavaScript، CSS، HTML، JSON، XML، متن، یا یک تصویر — که در پایگاه دادهٔ پلتفرم ذخیره می‌شود و به‌عنوان جزئی دست‌اول از راه‌حل بسته‌بندی می‌گردد، تا همراه راه‌حل سفر کند نه اینکه از میزبانی بیرونی واکشی شود. بایت‌های فایل جداگانه سفر می‌کنند (به‌صورت درون‌خطی در بستهٔ راه‌حل)؛ این مانیفست همان فراداده است، که به شکل یکسان اعتبارسنجی می‌شود، چه منبعی از راه Admin Control Center ساخته شده باشد، چه با یک فراخوانی مستقیم API ارسال شده باشد، چه یک دستیار هوش مصنوعی تولیدش کرده باشد، و چه درون یک وارد کردن راه‌حل حمل شده باشد — قاعدهٔ تک‌مسیرِ اعتبارسنجی (بخش 6.7).

منابع وب عامدانه Object Storage نیستند: Object Storage همان انبار بلاب جداگانه برای حجم‌های بزرگ فایل‌های عملیاتی/کاربری است، حال آنکه یک منبع وب فایلی کوچک از برنامه است که در پایگاه داده نگه داشته و همراه راه‌حل نسخه‌گذاری می‌شود. یک سقف اندازه به‌ازای هر منبع، این مرز را اعمال می‌کند.

شکل​

فیلدنوعاجبارییادداشت‌ها
logicalNamestringبلهپیشوند ناشر در ابتدا، مسیرمانند (مثلاً par_/dashboard/remoteEntry.js). حروف کوچک؛ تنها حرف، رقم، _، .، /، -. بخش مسیرمانند اجازه می‌دهد فایل‌های پرشمار یک بسته یک پایهٔ مشترک داشته باشند.
displayNamestringبلهنام خوانا برای انسان که در شبکهٔ منابع وب نمایش داده می‌شود.
descriptionstring | nullخیرتوصیف کوتاه.
typestringبلهیکی از JavaScript، Css، Html، Json، Xml، PlainText، Png، Jpeg، Gif، Svg، Ico، Binary. تعیین‌کنندهٔ Content-Type سروشده و اینکه فایل متنی است (قابل ویرایش درون‌خطی) یا دودویی (تنها بارگذاری).
contentHashstringبلهSHA-256 به‌صورت هگز با حروف کوچک از بایت‌های فایل. وارد کردن دوبارهٔ محتوای یکسان خنثی است، و پاسخ سروشده به‌ازای هر هش به‌صورت تغییرناپذیر قابل کش است.
sizeBytesintegerبلهاندازهٔ بایت‌های فایل (≥ 0).

کجا اعتبارسنجی می‌شود​

  • ساخت — لایهٔ Application مانیفست را در برابر web-resource-manifest@1 اعتبارسنجی می‌کند، الزام می‌کند که logicalName با پیشوند ناشر مالک آغاز شود، و محتوای بیش از سقف اندازه را پیش از ذخیرهٔ بایت‌ها رد می‌کند.
  • وارد کردن راه‌حل — هر مانیفست منبع وبِ جاسازی‌شده در یک بستهٔ راه‌حل، پیش از ذخیرهٔ منبع در محیط مقصد، دوباره در برابر همان شِما اعتبارسنجی می‌شود.

سرو کردن​

پلتفرم بایت‌های یک منبع وب را از مبدأ خودش سرو می‌کند، Content-Type را از type می‌گذارد و contentHash را به‌عنوان یک ETag قوی بازمی‌گرداند. سرو کردن از 'self' همان چیزی است که اجازه می‌دهد بستهٔ یک برنامه/کنترل سفارشی زیر یک CSP سخت‌گیرانه و بدون مجاز شمردن مبدأیی بیرونی بارگذاری شود (بخش 6.15، «حالت Packaged»).

مرتبط​

  • مانیفست برنامهٔ سفارشی — در حالت Packaged، خروجی ساخت یک برنامهٔ سفارشی به‌صورت منابع وب ذخیره می‌شود و remoteEntryUrl آن به مسیر سروشده توسط پلتفرم اشاره می‌کند.
  • بستهٔ راه‌حل — اینکه اجزا (از جمله منابع وب) چگونه میان محیط‌ها سفر می‌کنند.