تقنية

ما هي ملفات الكوكيز وكيف يتذكر الموقع متصفحك؟

متصفح وخادم يتبادلان ملف تفضيل العرض في استجابة ثم طلب لاحق
الأسهم تميز إنشاء القيمة في الاستجابة عن إعادتها في الطلب. [1] عرض الرسم بالحجم الكامل.

ما هي ملفات الكوكيز؟ هي بيانات صغيرة يحتفظ بها المتصفح ليستعيد الموقع معلومات عن طلبات سابقة، مثل تفضيل طريقة العرض. تسمى أيضًا ملفات تعريف الارتباط. [1]

الخلاصة السريعة

تساعد ملفات الكوكيز الموقع على تذكر حالة المتصفح بين طلب وآخر. [1]

  • تتضمن الكوكيز اسمًا وقيمة، وقد يرسلها الخادم في رأس الاستجابة ثم يعيدها المتصفح في طلب لاحق. [1]
  • ملف الجلسة بلا موعد انتهاء صريح، وقد تعيده ميزة استعادة الجلسة؛ أما الدائم فله انتهاء محدد. تتقدم Max-Age على Expires عند اجتماعهما. [2]
  • الطرف الأول والثالث وصفان لعلاقة الملف بالموقع المفتوح، وليسا نوعين من مدة البقاء. [3]
  • قد يؤدي الحذف إلى الخروج من حساب أو فقد تفضيل محفوظ. يمكن التحكم بملفات موقع معين أو الطرف الثالث. [4]
  • في المثال أدناه، قيمة العرض وعدد ثواني بقائها معلومتان مختلفتان؛ لا تخلط قيمة الملف بمدة صلاحيته. [2]

كيف تنتقل القيمة بين الموقع والمتصفح؟

يرسل الخادم الاسم والقيمة في الرأس Set-Cookie، ثم يعيد المتصفح الملفات الملائمة في الرأس Cookie مع الطلبات اللاحقة. هكذا يتذكر الموقع اختيارًا سابقًا. [1]

لنفترض أن صفحة مكتبة تسمح بعرض قائمة الكتب بصورة مختصرة. اخترنا للمثال الاسم view والقيمة compact. هذان الاسمان من تأليف المثال، ولا يشيران إلى ملف حقيقي في جهازك.

Set-Cookie: view=compact; Max-Age=900
Cookie: view=compact

مدة البقاء: جلسة أم ملف دائم؟

إذا لم يحدد الملف Expires أو Max-Age، فهو ملف جلسة. لكن إغلاق نافذة المتصفح ليس اختبارًا قاطعًا لاختفائه؛ فقد تستعيده خاصية استعادة الجلسة. يحدد Max-Age مدة بالثواني، وتغلب قيمته Expires إذا اجتمعا. [2]

في مثال المكتبة، 900 ثانية تساوي 15 دقيقة. القيمة compact هي تفضيل العرض، أما 900 فهي مدة البقاء. لذلك يمكن تغيير مدة التفضيل مع الاحتفاظ بقيمته، أو تغيير القيمة مع بقاء المدة نفسها.

الطرف الأول والثالث: سؤال مختلف عن العمر

يرتبط وصف الطرف الأول بالموقع الذي تزوره، بينما يأتي ملف الطرف الثالث من سياق موقع آخر داخل الصفحة. يتغير الوصف بحسب الموقع المفتوح؛ وقد يكون الملف نفسه من الطرف الأول في زيارة، ومن الطرف الثالث في سياق آخر. [3]

يمكنك تصنيف ملفين بطريقتين مستقلتين: اسأل أولًا متى ينتهي كل ملف، ثم اسأل ما علاقته بالموقع المفتوح. لا يكفي أن تقول «دائم» لتعرف طرفه، ولا «طرف أول» لتعرف مدته. [3]

عمود لمدة الملف وعمود لسياق الطرف الأول والثالث دون مساواة بينهما
العمر والسياق محوران مستقلان في تصنيف ملفات الكوكيز. [2][3] عرض الصورة بالحجم الكامل.

ماذا يحدث عند حذف ملفات الكوكيز؟

قد تنتهي الجلسة التي يتذكرها الموقع، أو تضيع بعض التفضيلات المحفوظة. يدعم Chrome حذف بيانات موقع محدد، كما يتيح ضبط ملفات الطرف الثالث. قد تتعطل وظائف تعتمد عليها، لذلك انتبه إلى أثر الإعداد على المواقع التي تستخدمها. [4]

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

قراءة المثال دون خلط المعلومات

اقرأ السطر الأول في المثال على جزأين: view=compact يحدد ما نحفظه، وMax-Age=900 يحدد المدة. السطر الثاني يعرض الاسم والقيمة اللذين قد يعودان في الطلب. لا تظهر مدة البقاء هناك كما ظهرت في سطر الإنشاء. [1][2]

للتأكد من فهمك، استبدل compact بالقيمة wide، ثم استبدل 900 بالعدد 1800. تغير الاختيار في المحاولة الأولى، وتضاعفت المدة إلى 30 دقيقة في الثانية. هذا تدريب على قراءة مثال، لا إعداد مطلوب لموقعك.

المصادر ومتابعة القراءة

  1. MDN: آلية ملفات تعريف الارتباط (يفتح في نافذة جديدة)developer.mozilla.org
  2. MDN: مدة ملفات الارتباط ورأس Set-Cookie (يفتح في نافذة جديدة)developer.mozilla.org
  3. web.dev: الطرف الأول والثالث وسياق الموقع (يفتح في نافذة جديدة)web.dev
  4. Google Chrome: حذف ملفات تعريف الارتباط والتحكم بها (يفتح في نافذة جديدة)support.google.com

أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.