وقتی شما آدرس یه سایت رو توی نوار بالای مرورگر وارد میکنین، مثلاً:
https://en.wikipedia.org/wiki/Ariobarzanes_of_Persis
یعنی به مرورگر میگین: «برو از سرور ویکیپدیا، توی مسیر* «wiki» برام چیزای مربوط به آریوبرزن رو بیار».
🧠 مشکل پروتکلی که ما باهاش این درخواستها رو میفرستیم (یعنی HTTP) اینه که بیحافظه یا اصطلاحاً Stateless هست؛ یعنی هر درخواست از درخواست دیگه کاملاً مستقله و سرور یادش نمیمونه قبلاً چی رخ داده. مثلاً اگه شما یه کالا به سبد خریدتون 🛒 اضافه کنین و برین صفحه بعدی سایت، سرور توی درخواست جدید اصلاً یادش نیست شما کی بودین یا چی تو سبدتون داشتین! برای همین باید یه راهحل ایجاد میشد که این مشکل رو حل کنه.
🍪 یکی از این راهها، «کوکی» هست. کوکی انواع مختلفی داره، اما به زبان ساده: وقتی شما وارد یه سایت میشین، سرور یه تیکه اطلاعات کوچک براتون میفرسته. مرورگر شما این داده رو روی کامپیوتر یا گوشیتون ذخیره میکنه..💾 از اون به بعد، مرورگر هر درخواستی که به اون سایت میفرسته، این تیکه داده رو هم ضمیمهاش میکنه تا سرور بفهمه شما همون کاربر قبلی هستین. (طلبیعتا خودش هم آیدی شما رو یادش هست)
اگه بخوایم خیلی ساده شبیهسازیش کنیم (مثلاً فقط با یه عدد به عنوان شناسه کوکی):
- 👋 درخواست اول (مرورگر): سلام، من صفحه آریوبرزن رو میخوام.
+ 🔢 پاسخ (سرور): سلام، بیا اینم صفحه. راستی، این شناسه رو (مثلاً عدد ۱۲۳) پیش خودت ذخیره کن و دفعه بعد که اومدی بهم نشونش بده. (اینجا مرورگر عدد ۱۲۳ رو روی سیستم شما ذخیره میکنه)
- (مرورگر): من همون ۱۲۳ هستم؛ حالا صفحه سورنا رو میخوام.
+ 🔁✅ پاسخ دوم (سرور): آها تویی! بفرما اینم صفحه سورنا.
👀🕵️ تا اینجا رو داشته باشین تا بعدش بهتون بگم چرا همین کوکیها میتونن باعث تعقیب (Tracking) شما توی اینترنت بشن!
* این مسیر منطقیه و میتونه فولدر، مسیر کد یا یک Endpoint از API باشه.