هذا الرمز يتم حفظه في المتصفح بحيث يكون مرتبطا مع ال domain الخاص بالموقع فلا يتم استخدامه أو إرساله في ال requests القادمة إلا إذا كان ال request متوجها لنفس ال domain و بمعنى آخر لنفس السيرفر الذي قام بإنشاء هذا ال session_id لتمييز هذا المستخدم عن غيره و التحقق منه
الفكرة أن أي عملية (action) يقوم بها المستخدم بعد تسجيل الدخول يجب فيها أن يتم التحقق من هوية المستخدم و أنه مخول بالفعل لهذا الإجراء.. تخيل أن المستخدم ضغط على زر لتعديل اسمه في الموقع.. فكيف نتأكد أن هذا المستخدم بالفعل هو صاحب هذا الحساب الذي يريد تعديل اسمه فيه؟
هذه الطريقة المعتمدة على ال session و ال cookies هي الطريقة التقليدية المعتمد عليها في مواقع الإنترنت للتأكد من هوية المستخدم و أحقيته في إجراءات معينة، لكن ماذا عن التطبيقات و المواقع (المنفصلة) التي تستخدم ال API؟ كيف يتم التحقق فيها من المستخدم؟
الفرق الحقيقي بينهما أن السيرفر في هذه الحالة فقط يتحقق من ال token المرسل و أنه صالح، دون جلب بيانات المستخدم المرتبطة بهذا ال token مما يجعل عملية التحقق أسرع لأن العبء تم تخفيفه على السيرفر
البيانات المتعلقة ب(الجلسة الحالية) للمستخدم - مثال: المنتجات المضافة لعربة التسوق في متجر الكتروني-
في حالة ال session-cookie يتم حفظها في قاعدة البيانات و يقوم السيرفر بجلبها في كل مرة يصل له ال session_id
أما في حالة ال token فهي تحفظ في ال client نفسه، لاحظ كيف ريحنا السيرفر
في حالة ال session-cookie يتم حفظها في قاعدة البيانات و يقوم السيرفر بجلبها في كل مرة يصل له ال session_id
أما في حالة ال token فهي تحفظ في ال client نفسه، لاحظ كيف ريحنا السيرفر
هل تذكر مثال الغرفة الممتلئة بالبيانات لكل مستخدم و مفتاحها هو ال session_id؟ الآن لا يوجد غرف بالسيرفر لتعبئة بيانات الجلسات لكل مستخدم، بل تحفظ البيانات في جهاز المستخدم نفسه
و بناءً على ذلك.. تعتبر طريقة ال token أكثر قابلية للتوسع (scalable)، لأنك عندما تصل لعدد هائل من المستخدمين فسيتم حفظ بيانات الجلسة في أجهزة هؤلاء المستخدمين بدلا من حفظها في ال server
تجدر الإشارة إلى أن الاعتماد على ال token يتم بعدة طرق لكن أشهرها هو ما يعرف بال (jwt: json web token) و الأخرى هي OAuth حيث تشتركان في مبدأ العمل مع بعض الاختلافات في التفاصيل التي لا يسع المجال لذكرها الآن
كلتا الطريقتين لهما جوانب إيجابية و سلبية و حالات معينة للاستخدام،
و في النهاية.. أتمنى أن أكون أضفت لك شيئا في هذه السلسلة، و إن فعلت فأرجو منك نشرها بالرتويت و الإعجاب للتغريدة الأولى بها 👇🏻..
و بالعافية عليك الكوكيز 🍪🌷
و في النهاية.. أتمنى أن أكون أضفت لك شيئا في هذه السلسلة، و إن فعلت فأرجو منك نشرها بالرتويت و الإعجاب للتغريدة الأولى بها 👇🏻..
و بالعافية عليك الكوكيز 🍪🌷
جاري تحميل الاقتراحات...