بعد انتهاء التجربة الأصلية بنجاح، سنطرح ميزة "عناوين الوصول إلى مساحة التخزين" (SAH) في الإصدار 133 من Chrome.
ما هي عناوين Storage Access API؟
عناوين Storage Access Headers هي عناوين 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 (SAA). يمكن أن يحتوي العنوان على القيم التالية:
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" هي طريقة مقترَحة وأكثر فعالية لاستخدام واجهة برمجة التطبيقات Storage Access API (SAA). بشكل عام، يؤدي هذا التغيير إلى تحقيق عدة تحسينات:
- إتاحة عمليات التضمين غير المستندة إلى إطارات iframe: تتيح واجهة برمجة التطبيقات Storage Access API لمجموعة أكبر من الموارد.
- تقليل استخدام الشبكة: عدد أقل من الطلبات وأحجام حمولات أصغر
- انخفاض استخدام وحدة المعالجة المركزية: تقليل معالجة JavaScript
- تحسين تجربة المستخدم: يزيل عمليات التحميل الوسيطة المزعجة.
تعديل الحلّ
باستخدام ميزة "عناوين الوصول إلى مساحة التخزين"، هناك حالتان قد تحتاج فيهما إلى تعديل الرمز:
- تستخدِم SAA وتريد تحقيق أداء أفضل من خلال استخدام منطق العناوين لطلبات
storage-accessاللاحقة. - لديك عملية تحقّق أو منطق يعتمد على ما إذا كان العنوان
Originمضمّنًا في الطلب المقدَّم إلى خادمك.
يمكنك الاطّلاع على المستندات لمعرفة كيفية استخدام Storage Access Headers في الحلّ الذي تقدّمه.
التفاعل مع الملاحظات ومشاركتها
إذا كانت لديك ملاحظات أو واجهت أي مشاكل، يمكنك إبلاغنا عن مشكلة. يمكنك أيضًا الاطّلاع على مزيد من المعلومات حول عناوين Storage Access API في شرح GitHub.