بعد نجاح مرحلة التقييم والتجربة، سنطرح عناوين الوصول إلى مساحة التخزين (SAH) في الإصدار 133 من Chrome.
ما هي "عناوين الوصول إلى مساحة التخزين"؟
عناوين الوصول إلى مساحة التخزين هي عناوين HTTP جديدة تسمح للمحتوى المضمّن (مثل التطبيقات المصغّرة للوسائط الاجتماعية والتقاويم والأدوات التفاعلية والصور) بالتحقّق من إمكانية الوصول إلى ملفات تعريف الارتباط غير المقسّمة. في السابق، كان هذا الإجراء ممكنًا فقط باستخدام JavaScript. يعمل عنوان الطلب Sec-Fetch-Storage-Access
وعنوان الاستجابة Activate-Storage-Access
الجديدان على تحسين الأداء وتجربة المستخدم للمواقع الإلكترونية التي تعتمد على المحتوى المضمّن، كما يتيحان تحميل الموارد غير المستندة إلى إطار iframe. اطّلِع على المستندات لمعرفة تفاصيل التنفيذ.
عنوان الطلب
Sec-Fetch-Storage-Access: <access-status>
عندما يزور مستخدم صفحة تتضمّن محتوى من مواقع إلكترونية أخرى، يُدرِج المتصفّح تلقائيًا العنوان Sec-Fetch-Storage-Access في الطلبات التي تتطلب بيانات اعتماد (مثل ملفات تعريف الارتباط) من مواقع إلكترونية أخرى. يشير هذا العنوان إلى حالة إذن الوصول إلى ملفات تعريف الارتباط الخاصة بالمحتوى المضمّن، ويمكن أن يحتوي على القيم التالية:
none
: لا يملك العنصر المضمّن إذنstorage-access
، وبالتالي لا يمكنه الوصول إلى ملفات تعريف الارتباط غير المقسّمة.inactive
: يملك العنصر المضمّن الإذنstorage-access
، ولكنّه لم يوافق على استخدامه في سياقه الحالي. لا يملك العنصر المضمّن إذن الوصول إلى ملفات تعريف الارتباط غير المقسّمة.active
: يتوفّر للمحتوى المضمّن إذن وصول إلى ملفات تعريف الارتباط غير المقسّمة. سيتم تضمين هذه القيمة في أي طلبات من مصادر مختلفة يمكنها الوصول إلى ملفات تعريف الارتباط غير المقسّمة.
عناوين الاستجابة
Activate-Storage-Access: <retry-or-load>
يوجّه العنوان Activate-Storage-Access
المتصفّح إلى إعادة محاولة إرسال الطلب باستخدام ملفات تعريف الارتباط أو تحميل المورد مباشرةً مع تفعيل واجهة برمجة التطبيقات Storage Access API. يمكن أن يحتوي العنوان على القيم التالية:
load
: يوجّه المتصفّح إلى منح القائم بالضمين إذن الوصول إلى ملفات تعريف الارتباط غير المقسّمة للمورد المطلوب. ويؤدي تضمين هذا العنوان إلى استدعاءdocument.requestStorageAccess()
في حال منحstorage-access
الإذن. ولن يتم عرض أي طلب إضافي للمستخدم.retry
: يردّ الخادم بأنّه على المتصفّح تفعيل إذن الوصول إلى مساحة التخزين، ثم إعادة محاولة إرسال الطلب.
Activate-Storage-Access: retry; allowed-origin="https://site.example"
Activate-Storage-Access: retry; allowed-origin=*
Activate-Storage-Access: load
المزايا الرئيسية
عناوين الوصول إلى مساحة التخزين هي طريقة مُقترَحة وأكثر فعالية لاستخدام واجهة برمجة التطبيقات Storage Access API. بشكل عام، يقدّم هذا التغيير العديد من التحسينات:
- إتاحة عمليات التضمين التي لا تستخدم إطار iframe: تتيح هذه الميزة استخدام ميزة SAA مع مجموعة أكبر من المراجع.
- استخدام أقل للشبكة: عدد طلبات أقل وحمولات أصغر
- استخدام وحدة المعالجة المركزية بدرجة أقل: تقليل معالجة JavaScript
- تجربة مستخدم محسّنة: تُلغي عمليات التحميل المؤقتة المزعجة.
تعديل الحلّ
باستخدام ميزة "رؤوس الوصول إلى مساحة التخزين"، هناك حالتان قد تحتاج فيهما إلى تعديل الرمز البرمجي:
- إذا كنت تستخدِم SAA وتريد تحقيق أداء أفضل من خلال استخدام منطق الرأس لطلبات
storage-access
اللاحقة - لديك عملية تحقّق أو منطق يعتمدان على ما إذا كان عنوان
Origin
مضمّنًا في الطلب المرسَل إلى خادمك.
يمكنك الاطّلاع على المستندات لمعرفة كيفية استخدام رؤوس الوصول إلى مساحة التخزين في الحلّ الذي تقدّمه.
التفاعل مع الملاحظات ومشاركتها
إذا كانت لديك ملاحظات أو واجهت أي مشاكل، يمكنك الإبلاغ عن مشكلة. يمكنك أيضًا الاطّلاع على مزيد من المعلومات حول رؤوس الوصول إلى مساحة التخزين في الشرح على GitHub.