مرورگرهای وب با پیروی از پروتکل HTTP با وبسایتها تعامل دارند. این پروتکل مجموعهای استاندارد از قوانین برای ارتباط است:
- وقتی از یک صفحه وب بازدید میکنید، مرورگر شما درخواستهای HTTP را برای منابع موجود در صفحه، مانند HTML، CSS، جاوا اسکریپت و تصاویر ارسال میکند.
- وقتی یک سرور HTTP (وب سروری که میزبان یک وبسایت است) یک درخواست HTTP معتبر از یک مرورگر دریافت میکند، سرور با یک پاسخ HTTP به مرورگر پاسخ میدهد.
- درخواستها و پاسخها میتوانند شامل اطلاعات اضافی باشند که به عنوان هدرهای HTTP شناخته میشوند.
برای مثال، سایت cats.example.

درخواست
دسترسی به صفحه cats.example زنجیرهای از درخواستها را به دامنههای مختلف آغاز میکند. این شامل درخواست برای تصویری است که در خود cats.example میزبانی میشود، درخواستی برای اسکریپت تحلیلی از analytics.example و درخواستهای دیگر برای منابع اضافی از دامنههای دیگر.
درخواستهای HTTP را میتوان با هدرهای درخواست HTTP تکمیل کرد تا اطلاعات تکمیلی را از مرورگر به وب سرور ارائه دهند. به عنوان مثال، هدرهایی مانند موارد زیر اغلب گنجانده میشوند:
-
Accept-Language: en-US
این سربرگ زبان مورد نظر کاربر را نشان میدهد، که در این مورد انگلیسی (ایالات متحده) است. -
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
این سربرگ جزئیاتی در مورد مرورگر و سیستم عامل کاربر ارائه میدهد، در این مورد "Mozilla/5.0" (خانواده مرورگر)، "Macintosh" (سیستم عامل) و "Chrome/127.0.0.0" (نسخه مرورگر).
پاسخ
وقتی یک وب سرور درخواست معتبری را از یک مرورگر دریافت میکند، پاسخی را به مرورگر ارسال میکند که منبع مورد درخواست ("بار داده") را ارائه میدهد: HTML، CSS، جاوا اسکریپت، یک فایل تصویری، ویدیو یا سایر دادهها. همانطور که هر درخواست از مرورگر میتواند شامل هدرهای درخواست باشد، هر پاسخ از سرور نیز میتواند شامل هدرهای پاسخ باشد. این هدرهای پاسخ همراه با بار داده ارسال میشوند.
یک هدر Set-Cookie که همراه با یک پاسخ ارائه میشود، به مرورگر شما میگوید که متنی را ذخیره کند: یک نام و یک مقدار. این به عنوان یک کوکی HTTP شناخته میشود. در پاسخ به درخواست cats.example/images/cat.jpg ، سرور cats.example هدر Set-Cookie:cat=tabby را وارد میکند. این به مرورگر دستور میدهد که یک کوکی به نام cat با مقدار tabby ذخیره کند.
سپس آن کوکی با درخواستهای بعدی به cats.example, تا زمانی که کوکی منقضی شود یا حذف شود . این به سرور اجازه میدهد تا اطلاعات مربوط به کاربر را در چندین صفحه وب یا جلسه حفظ کند: به عنوان مثال، اینکه به کاربر تصویر یک گربه ماده نشان داده شده است.
| سربرگ | اکشن | مثال | اثر | |
|---|---|---|---|---|
| پاسخ HTTP سرور به مرورگر | Set‑Cookie | سرور وب از مرورگر شما میخواهد که یک کوکی ذخیره کند. | Set‑Cookie:cat=tabby | کوکی توسط مرورگر شما ذخیره میشود و در درخواستهای بعدی به سروری که آن را تنظیم کرده است، ارائه میشود. |
| درخواست HTTP مرورگر به سرور | Cookie | مرورگر شما کوکی ارائه میدهد. | Cookie:cat=tabby | کوکی در اختیار سروری قرار میگیرد که مقصد درخواست است. |
دموها
- 1pc.glitch.me : نسخه آزمایشی کوکیهای شخص ثالث
- 3pc.glitch.me : نسخه آزمایشی کوکی شخص ثالث
ابزارها
اطلاعات بیشتر
- کوکیها چیستند؟
- ویژگیهای کوکی
- کوکیهای شخص ثالث چیستند؟
- ابزارهای کوکی
- دموهای کوکی
- استفاده از کوکیهای HTTP