تم تصميم الويب بحيث يكون كل طلب من متصفح ويب إلى موقع إلكتروني منفصلاً. لا تتضمّن شبكة الويب "ذاكرة" من حيث التصميم. في كل مرة تفتح فيها صفحة ويب، لا يمكن للموقع الإلكتروني الذي تزوره تذكُّر المعلومات من جلستك الأخيرة. يساعد ذلك في جعل الويب أكثر كفاءة وبساطة، لأنّه ليس هناك حاجة إلى آلية لتتبُّع الطلبات والردود.
ولكنّ طبيعة الويب التي تُنسي المستخدمين المعلومات تُشكّل أيضًا مشكلة. على سبيل المثال، كيف يمكن أن تعمل سلة التسوق إذا لم يتمكّن الموقع الإلكتروني الذي تتسوّق منه من تذكُّر ما أضفته إليها؟
تم اختراع ملفات تعريف الارتباط لحلّ هذه المشكلة.
تمنح ملفات تعريف الارتباط المواقع الإلكترونية ذاكرة.
عند زيارة صفحة على موقع إلكتروني، يُرسِل متصفّح الويب طلبات إلى خادم الموقع الإلكتروني للحصول على الموارد المضمّنة في الصفحة، مثل HTML أو CSS أو JavaScript أو الصور.
تتفاعل متصفّحات الويب والمواقع الإلكترونية من خلال اتّباع بروتوكول HTTP. هذه هي مجموعة من القواعد الموحدة للعملية التواصلية.
استجابةً لطلب HTTP للحصول على مورد، يمكن أن يتضمّن خادم الموقع الإلكتروني معلومات إضافية تُعرف باسم
الرؤوس إلى جانب المورد نفسه. يطلب عنوان Set-Cookie
المضمّن في استجابة HTTP
من المتصفّح تخزين بعض النصوص: اسم وقيمة. ويُعرف هذا باسم
ملف تعريف الارتباط. على سبيل المثال، يطلب رأس الاستجابة Set-Cookie:cat=tabby
من المتصفّح
تخزين ملف تعريف ارتباط باسم "cat" والقيمة "tabby".
بعد ضبط ملف تعريف الارتباط هذا، ستتضمّن الطلبات اللاحقة من المتصفّح إلى الموقع الإلكتروني
العنوان Cookie:cat=tabby
. يمكن لخادم الموقع الإلكتروني الوصول إلى ملف تعريف الارتباط من عنوان الطلب،
واستخدام القيمة.
آلية عمل ملفات تعريف الارتباط: خطوة بخطوة
لنفترض أنّك زرت الموقع الإلكتروني cats.example
. يريد الموقع الإلكتروني عرض
صورة عشوائية لقطة، والاحتفاظ بسجلّ للقطة التي تم عرضها لك.
توضّح الخطوات التالية كيفية إجراء ذلك باستخدام ملفات تعريف الارتباط.
1. يطلب المتصفّح ملفًا.
تزور الصفحة الرئيسية للموقع الإلكتروني cats.example
.
يطلب المتصفّح الملفات على الصفحة، بما في ذلك cat.jpg
من cats.example
.
2. استجابة خادم الموقع الإلكتروني
يستجيب الخادم على العنوان cats.example
بملف الصورة cat.jpg
.
يُدرِج الخادم عنوانًا في الاستجابة: Set-Cookie:cat=tabby
.
3- تلقّي المتصفّح للردّ
يتلقّى المتصفّح ملف الصورة ويعالج العنوان Set-Cookie:cat=tabby
المضمّن فيه.
يتم تخزين ملف تعريف ارتباط: الاسم cat
، القيمة tabby
.
4. يُقدّم المتصفّح طلبات إضافية
من الآن فصاعدًا، سيضيف المتصفّح العنوان Cookie:cat=tabby
مع الطلبات المرسَلة إلى cats.example
.
عندما يتلقّى خادم الويب cats.example
طلبًا، يمكنه معالجة ملف تعريف الارتباط
وتنفيذ أي إجراء يريده بهذه القيمة، مثل التأكّد من عدم إرسال
صورة القطة المخططة نفسها إليك مرة أخرى.
في ما يلي عملية ملفات تعريف الارتباط بالكامل:
- يقدّم المتصفّح طلبًا إلى موقع إلكتروني للحصول على ملف.
- يمكن أن يتضمّن خادم الموقع الإلكتروني عنوانًا مثل
Set-Cookie:cat=tabby
مع الملف الذي يرسله استجابةً للطلب. - عندما يتلقّى المتصفح الردّ، يخزّن ملف تعريف الارتباط.
- مع كل طلب لاحق، يرسل المتصفّح ملف تعريف الارتباط إلى الخادم في عنوان
Cookie:cat=tabby
.
الوصول إلى ملفات تعريف الارتباط باستخدام JavaScript
يستخدم المثال السابق رأس الاستجابة Set-Cookie
لضبط ملف تعريف ارتباط.
يمكن أيضًا إنشاء ملفات تعريف الارتباط باستخدام JavaScript باستخدام الطريقة document.cookie
.
جرِّب الإصدار التجريبي: javascript-cookie.glitch.me/.
مزيد من المعلومات: المستند: سمة ملفّ تعريف الارتباط
لماذا نحتاج إلى ملفات تعريف الارتباط؟
في عام 1994، كان المهندس "لو مونتولي" يعمل في شركة البرامج Netscape، التي أنشأت متصفّح الويب الأكثر رواجًا في منتصف التسعينيات.
في الوقت نفسه، كانت شركة MCI للاتصالات تحاول إنشاء ميزة "سلة تسوّق"
لأحد أوائل المتاجر على الإنترنت في العالم. تواصلت شركة MCI مع
Montulli لشرح مشكلتها. ردّ "مونتولي" على ذلك من خلال إضافة ميزة إلى بروتوكول HTTP تتيح لموقع إلكتروني تخزين قدر صغير من النص في متصفح الويب الخاص بالمستخدم، بالإضافة إلى اسم وقيمة: مثل cart-id=123
. وأطلق عليها اسم
"ملف تعريف ارتباط"، لأنّ المبرمجين كانوا يستخدمون في تلك الأيام كلمة "ملف تعريف ارتباط سحري" لقطعة
صغيرة من المعلومات الإضافية المضمّنة في عملية نقل البيانات.
أكمل "لو" عمله بشأن ملفات تعريف الارتباط HTTP في أقل من أسبوع. لم يكن يعلم أنّه ستصبح ملفات تعريف الارتباط أساسية للإعلانات وتسجيل الدخول والدفعات ورصد عمليات الاحتيال وغيرها من خدمات الويب المهمة. ملفات تعريف الارتباط هي تكنولوجيا بسيطة جدًا أدّت إلى آثار جانبية بعيدة المدى.
استخدامات ملفات تعريف الارتباط
تسمح ملفات تعريف الارتباط للمتصفّح بتخزين قدر صغير من المعلومات عن المستخدِم من أجل "تذكُّر" شيء ما على مدار طلبات متعددة. ملفّات تعريف الارتباط لها عدة استخدامات:
- إدارة الجلسات
السماح لموقع إلكتروني بالتعرّف على مستخدم، على سبيل المثال، للحفاظ على حالة تسجيل دخوله على مستوى صفحات مختلفة - التخصيص
يمكنك تخزين الإعدادات المفضّلة للمستخدم، مثل اللغة أو المظهر أو العناصر التي شاهدها مؤخرًا، لتخصيص تجربة الموقع الإلكتروني. - التتبّع
في السابق، كان يتم استخدام ملفات تعريف الارتباط لتتبّع سلوك المستخدِمين على المواقع الإلكترونية، وذلك لأغراض الإعلانات المستهدفة وحالات الاستخدام الأخرى.
بدلاً من ذلك، تُستخدَم ملفات تعريف الارتباط بشكل عام لتخزين المعرّفات التي تتم معالجتها من قِبل الخادم وإرسالها. على سبيل المثال، قد يتضمّن الرأس الذي يتضمّن طلبًا إلى خدمة تحليلات الويب ملفّ تعريف ارتباط على النحو التالي:
Cookie: _analytics=ANALYTICS1.2.34567890.123456789
يمكن لخادم الإحصاءات الذي يتلقّى الطلب معالجة المعرّف، بالإضافة إلى معلومات أخرى عن الصفحة.
التعرف على المزيد
- سمات ملفات تعريف الارتباط
- ما هي ملفات تعريف الارتباط التابعة لجهات خارجية؟
- طلب HTTP والاستجابة
- أدوات ملفات تعريف الارتباط
- العروض التوضيحية لملفات تعريف الارتباط
- استخدام ملفات تعريف الارتباط HTTP
- ملف تعريف الارتباط السحرية: كيف عالج "لو مونتولي" فقدان الذاكرة على الويب
- ملفات تعريف الارتباط في HTTP (المواصفات الأصلية)
- ملفات تعريف ارتباط HTTP، أو كيفية عدم تصميم البروتوكولات