آشنایی با کوکی ها در ASP.NET و نحوه ایجاد آن‌ها به زبان ساده

آشنایی با کوکی ها در ASP.NET و نحوه ایجاد آن‌ها به زبان ساده

نوشته شده توسط: تیم فنی نیک آموز
تاریخ انتشار: ۱۵ تیر ۱۴۰۳
آخرین بروزرسانی: ۱۶ تیر ۱۴۰۳
زمان مطالعه: 6 دقیقه
۰
(۰)

کوکی ها (Cookies) در ASP.NET فایل‌های متنی کوچکی هستند که اغلب برای شناسایی کاربران وب‌سایت استفاده می‌شوند. این فایل‌ها توسط سرور در کامپیوتر کاربر قرار داده می‌شوند. هربار که همان سیستم، صفحه‌ای را با مرورگر خود درخواست می‌کند، فایل کوکی نیز با آن ارسال می‌شود. کاربرد این فایل‌ها در بهبود عملکرد سایت، احراز هویت کاربران و به‌خاطرسپردن اطلاعات آن‌ها، مزایایی مانند صرفه‌جویی در زمان و بهبود تجربه کاربری را برای توسعه‌دهندگان دارد. کوکی ها در ASP.NET فایل ساخت، اصلاح و مدیریت هستند که در این مقاله و در کنار جزئیات دیگر این موضوع، آن‌ها را یاد خواهید گرفت.

دوره آموزشی ASP .NET Core پیشرفته نیک آموز

کوکی‌ ها در ASP.NET چیست؟

کوکی ها در ASP.NET فایل‌های متنی کم‌حجمی هستند که بخشی از اطلاعات سیستم، فعالیت‌های آنلاین کاربر و تنظیمات او، در آن‌ها ذخیره می‌شوند. هرزمان که کاربری از سایت بازدید می‌کند، این اطلاعات توسط وب‌سایت یا وب‌اپلیکیشن خوانده می‌شوند. هنگامی‌که سیستم کاربر صفحه وب را از سرور درخواست می‌کند، وب‌ سرور نه‌تنها یک صفحه، بلکه فایل کوکی حاوی تاریخ و زمان را نیز به سیستم او می‌فرستد. این کوکی در پوشه‌ای روی هارد دیسک سیستم کاربر ذخیره می‌شود. اگر کاربر مجدد درخواست صفحه را ارسال کند، مرورگر در هارد دیسک سیستم او، کوکی مرتبط‌با همان صفحه را جستجو می‌کند. هر سایت، کوکی‌های خود را دارد که به‌صورت جداگانه در سیستم کاربر ذخیره می‌شوند و این کوکی‌ها، از وب‌سایت‌هایی که کاربران بازدید می‌کنند، ایجاد می‌شوند.

انواع کوکی‌ ها در ASP.NET 

کوکی ها در ASP.NET به دو دسته «ماندگار» و «موقت» تقسیم می‌شوند که در ادامه، جزئیات آن‌ها را تشریح کرده‌ایم:

کوکی های دائمی

«Persistent Cookies» کوکی‌‌هایی بدون زمان انقضا هستند که به‌صورت دائمی روی هارد دیسک کامپیوتر کاربر ذخیره شده و می‌مانند. این فایل‌ها ویژگی‌های زیر را دارند:

  • می‌توانند به‌طور دائمی توسط وب‌سرورها استفاده شوند؛ مگر زمانی که از روی مرورگر پاک شده یا منقضی شوند.
  • کوکی‌های ماندگار از تنظیمات مرورگر تأثیر نمی‌گیرند (تنظیماتی که باعث می‌شوند هنگام بسته‌شدن مرورگر، فایل‌های موقت هم حذف شوند.)
  • Persistent Cookies به‌طور معمول برای ذخیره اطلاعات ورود به سیستم یا تنظیمات انتخابی کاربران استفاده می‌شوند و امکان دسترسی به اطلاعات را از چند Session مختلف می‌دهند.

کوکی های موقت

«Non-Persistent Cookies» یا «Session Cookies» کوکی‌هایی هستند که پس از مدت زمان مشخصی، منقضی شده و ازبین می‌روند. این کوکی‌ها با خصوصیات زیر شناخته می‌شوند:

  • فقط زمانی که مرورگر وب درحال اجرا است، ذخیره می‌شوند.
  • در حافظه موقت مرورگر ذخیره می‌شوند و با بسته‌شدن آن هم ازبین می‌روند.
  • به‌عنوان «کوکی های درون‌حافظه» یا «In-memory Cookies» نیز شناخته می‌شوند.
  • برخلاف کوکی‌های دائمی، در دیسک سیستم کاربر ذخیره نمی‌شوند.
  • مهم‌ترین کاربرد آن‌ها، حفظ اطلاعات Session در طول یک بازدید از وب‌سایت است.

مزایای کوکی ها در ASP.NET 

در ادامه، مزایای کوکی ها در ASP.NET را تشریح کرده‌ایم تا بتوانید نسبت‌به این قابلیت ASP، با اطمینان خاطر تصمیم بگیرید.

  • بهبود تجربه کاربری

کوکی‌ها به وب‌سایت‌ها اجازه می‌دهند تنظیمات انتخاب‌شده توسط کاربر، اطلاعات ورود به سیستم و محتویات سبد خرید را به‌خاطر بسپارند تا تجربه بهتر و راحت‌تری در تعاملات بعدی به‌وجود آید.

  • عملکرد بهبودیافته وب‌‌سایت

کوکی‌ها ویژگی‌هایی مانند به‌خاطرسپردن تنظیمات زبان، سفارشی‌کردن محتوا و ذخیره Session های کاربر در صفحات را فعال می‌کنند.

  • رسیدن به اهداف بازاریابی و تبلیغات

Cookies در ASP.NET به کسب‌وکارها کمک می‌کنند تا تبلیغات را براساس رفتار کاربر، علایق و جمعیت‌شناسی مخاطبان هدف خود تنظیم کنند. بنابراین، اهداف و فرآیندهای مارکتینگ و فروش به‌شکل بهینه‌تری پیش خواهند رفت.

  • آنالیز ساده

وب‌سایت‌ها می‌توانند از کوکی‌ها برای جمع‌آوری آمار بازدیدکنندگان ناشناس استفاده کنند. براساس این داده‌ها، امکان ارائه خدمات و تجربه کاربری بهینه‌تری به‌وجود می‌آید.

  • استفاده کم از منابع

کوکی ها در ASP.NET به حداقل فضای ذخیره‌سازی در سیستم کلاینت نیاز دارد. بنابراین منابع سرور به‌شکل بهینه‌ای استفاده می‌شوند.

ایجاد و استفاده از کوکی‌ ها در ASP.NET

دستور “Response.Cookies” از کلاس HttpCookie برای ایجاد کوکی ها در ASP.NET استفاده می‌شود. توجه داشته باشید که این دستور را باید قبل از تگ <html> بنویسید.

در مثال زیر، کوکی را با نام “userInfo” ایجاد می‌کنیم و نام کاربری (UserName)، رنگ پروفایل (UserColor) و مدت زمان انقضا را به آن تخصیص می‌دهیم:

 

HttpCookie userInfo = new HttpCookie("userInfo");
userInfo["UserName"] = "Annathurai";
userInfo["UserColor"] = "Black";
userInfo.Expires = DateTime.Now.AddHours(1);
Response.Cookies.Add(userInfo);

 

برای استفاده از کوکی، باید از “Request.Cookies” استفاده کرده و دستور زیر را در ASP.NET بنویسید.

 

if (Request.Cookies["userName"] != null)
{
    string userName = Server.HtmlEncode(Request.Cookies["userName"].Value);
}

 

برای چاپ این کد، باید از تابع “write” به‌شکل زیر استفاده کنید:

 

<%
response.write("Firstname=" & userName)
%>

 

حذف کوکی‌ ها در ASP.NET

برای حذف کوکی ها از سیستم کاربران، باید این فایل را از پوشه “cookie” سیستم او پاک کنیم. بنابراین از خصوصیت “expires” استفاده می‌کنیم و دستور زیر را می‌نویسیم تا در عرض یک ساعت، کوکی حذف شود:

 

userInfo.Expires = DateTime.Now.AddHours(1);

 

مدیریت کوکی‌ ها در ASP.NET

مدیریت کوکی ها در ASP.NET ، به مجموعه‌ای از عملیات مربوط‌به ایجاد، خواندن، به‌روزرسانی و حذف کوکی‌ها اطلاق می‌شود. در دو بخش قبل ایجاد، خواندن و حذف کوکی‌ها را آموزش دادیم. در این بخش، به‌روزرسانی هر کوکی را نشان خواهیم داد.

برای به‌روزرسانی یک کوکی، باید آن را از شی “Request” بازیابی کنیم، مقدار را تغییر دهید و دوباره به شی “Response” اضافه کنیم. بنابراین، کد زیر را در ASP.NET می‌نویسیم:

 

if (Request.Cookies["userName"] != null)
{
    HttpCookie cookie = Request.Cookies["userName"];
    cookie.Value = "NewValue";
    Response.Cookies.Set(cookie);
}

 

تنظیمات امنیتی برای کوکی‌ ها در ASP.NET

امن‌کردن کوکی ها در ASP.NET با خصوصیت “Secure” انجام می‌شود. این کار اطمینان می‌دهد تا کوکی‌های ما توسط هکران یا دیگر سایت‌ها قابل نفوذ و خواندن نیستند. امن کردن کوکی‌ها روی پروتکل HTTPS انجام می‌شود؛ بنابراین، اولین قدم تخصیص مقدار “true” به پارامتر secure در این پروتکل است که به‌شکل زیر آن را انجام می‌دهیم:

 

Response.Cookies.Add(
    new HttpCookie("key", "value")
    {
        Secure = true,
    });

 

خصوصیات کوکی ها در ASP.NET

در ASP.NET، هر کوکی می‌تواند خصوصیات زیر را داشته باشد:

  • Domain: اتصال کوکی‌ها به دامنه 
  • Secure: ایمن‌کردن کوکی با تنظیم این مقدار به true برای HTTPs
  • Value: اصلاح و تغییر یک کوکی
  • Values: اصلاح و تغییر کوکی‌ها با جفت کلید / مقدار 
  • Expires: تنظیم تاریخ انقضای کوکی‌ها 

جمع بندی: آنچه در نقش کوکی ها در ASP.NET

کوکی ها در ASP.NET فایل‌های کوچکی هستند که فعالیت‌های آنلاین کاربر را ذخیره می‌کنند. هر سرور در اولین درخواست سیستم کلاینت، یک فایل کوکی به مرورگر می‌فرستد. این کوکی‌ها سرعت وب‌سایت را افزایش و میزان تقاضا را به سرور کاهش می‌دهند. استفاده از این فایل‌ها در ASP.NET ساده است و کافیست از دستورهایی مانند “Response” و “Request” استفاده کنید.

چه رتبه ای می‌دهید؟

میانگین ۰ / ۵. از مجموع ۰

اولین نفر باش

title sign
معرفی نویسنده
تیم فنی نیک آموز
مقالات
317 مقاله توسط این نویسنده
محصولات
0 دوره توسط این نویسنده
تیم فنی نیک آموز
پروفایل نویسنده
title sign
دیدگاه کاربران

ثبت‌نام دوره‌های آنلاین تابستانه نیک‌آموز شروع شد 🏄
مشاهده سرفصل و رزرو رایگان
close-image