javascript - كيف المستمر هو localStorage؟




persistence local-storage (4)

أنا أعتمد بشكل كبير على التخزين المحلي لالمكون الإضافي الذي أكتبه. يتم تخزين جميع إعدادات المستخدم في ذلك. تتطلب بعض الإعدادات أن يكتب المستخدم regex'es وأنهم سيكونون حزينين إذا اختفت قواعدهم المعتادة في مرحلة ما. لذلك أنا الآن أتساءل عن مدى استمرار التخزين المحلي.

من المواصفات :

يجب على وكلاء المستخدمين انتهاء صلاحية البيانات من مناطق التخزين المحلية فقط لأسباب أمنية أو عندما يطلب منهم ذلك.

ما ورد أعلاه يبدو وكأنه يعمل مثل ملفات تعريف الارتباط على جانب العميل. أي عندما يقوم المستخدم بمسح كافة بيانات المستعرض (المحفوظات ، ملفات تعريف الارتباط ، ذاكرة التخزين المؤقت إلخ) سيتم أيضاً اقتطاع التخزين المحلي. هل هذا الافتراض صحيح؟


إذا كنت تستخدم LocalStorage لتطبيق iOS ، فكن حذراً للغاية. قامت أحدث نسخة من نظام التشغيل iOS (5.1 من أعلى رأسي) بنقل البيانات المحلية و localdb إلى جزء من ذاكرة التخزين المؤقت التي يتم مسحها بشكل منتظم ، أي ليست ثابتة على الإطلاق. لا أستطيع أن أقول حتى الآن إذا كان هذا خطأ أو تغيير في السياسة.


تم تصميم التخزين المحلي ليكون مخزنًا موثوقًا ومستمرًا للبيانات على العميل. لم يتم تصميمه على أنه "ملف تعريف ارتباط أفضل": تم تصميم هذه الوظيفة ليتم تلبيتها بواسطة "تخزين الجلسة".

من توصية مرشح تخزين الويب لعام 2011 ،

(التخزين المحلي) مصمم للتخزين الذي يمتد على عدة نوافذ ، ويدوم بعد الجلسة الحالية. على وجه الخصوص ، قد ترغب تطبيقات الويب في تخزين ميغابايت من بيانات المستخدم ، مثل المستندات التي تم إعدادها بواسطة المستخدم بالكامل أو صندوق بريد المستخدم ، على جانب العميل لأسباب تتعلق بالأداء.

كبيانات من جانب العميل - إنها ثابتة مثل أي بيانات من جانب العميل ، ضمن حدود الحجم التي ينفذها المتصفح. يمكن للمستخدمين حذفها في أي وقت ، وفتحها في محرر نصوص وتحريرها إلخ - تمامًا مثل أي بيانات من جانب العميل.


شيء واحد لملاحظة حول استخدام التخزين المحلي. هو متصفح خاص جدا. إذا قمت بتخزين البيانات باستخدام فايرفوكس ، فلن يكون ذلك متاحًا في chrome أو بمعنى آخر. بالإضافة إلى مسح ملفات تعريف الارتباط والجلسات ، لاحظت أيضًا أن المتصفح محدد إذا ما تم مسح التخزين المحلي أم لا. سأبحث في التفاصيل كثيرًا إذا كنت تخطط حقاً للاعتماد على التخزين المحلي لتطبيق ما.


في الأساس ، يجب ألا تعتمد بشكل كبير على التخزين المحلي.

يهدف التخزين المحلي ، إلى جانب تخزين جلسة العمل ، إلى الاستبدال من ملفات تعريف الارتباط ، وتحديد واجهة برمجة تطبيقات أكثر تناسقًا. هناك بعض الاختلافات في ملفات تعريف الارتباط:

  • على الرغم من إمكانية الوصول إلى ملفات تعريف الارتباط من جانب العميل والخادم ، إلا أنه يمكن الوصول إلى وحدة تخزين الويب بشكل عام ، والتخزين المحلي ، على وجه الخصوص ، من جانب العميل فقط.
  • سعة محسّنة (مسؤول عن ملفات تعريف الارتباط هي 4 كيلوبايت) إلى أكثر من 5 ميغابايت لكل مجال (Firefox و Google Chrome وأوبرا و 10 ميغابايت في IE).

لذا نعم ، افتراضك صحيح.





persistent-storage