آموزش ASP.Net > مدیریت کوکی در ASP.Net > نحوه پاک کردن یک کوکی در ASP.Net

مقدمه :

کوکی که بر روی کامپیوتر کاربر ایجاد و ذحیره شده را نمی توان به صورت مستقیم پاک نمود . اما می توان با تعیین یک زمان مربوط به گذشته ، برای تاریخ انقضای آن ، عملا مرورگر را مجبور کرد تا کوکی را حذف نماید .
سری بعدی که کاربر صفحه یا دامین ای که شامل آن کوکی بوده است را درخواست نماید ، به دلیل اتمام تاریخ انقضای کوکی ، مرور گر دیگر آن را نمی خواند .
نکته : با فراخوانی تابع Remove مجموعه کوکی های صفحه ( cookie collection ) ، می توان یک کوکی را از سمت کد سرور پاک نمود ، در نتیجه کوکی دیگر به مرورگر کاربر ( Client ) ارسال نمی شود . اما این متد کوکی که از قبل بر روی مرورگر کاربر قرار دارد را حذف نمی کند .

نحوه تعیین یک تاریخ گذشته برای زمان انقضای کوکی جهت از بین بردن آن :

  1. ابتدا بررسی نمایید که آیا کوکی هنوز وجود دارد یا خیر . سپس در صورتی که وجود داشت ، یک کوکی با همان نام مجددا ایجاد نمایید .
  2. تاریخ انقضای کوکی را به تاریخی گذشته تغییر دهید ( مثلا روز قبل ) .
  3. کوکی را مجددا به شی مجموعه کوکی ها ( cookie collection ) اضافه نمایید .

مراحل فوق را به صورت مرحله به مرحله در کدهای زیر نشان داده ایم :

کد
VB
If (Not Request.Cookies("UserSettings") Is Nothing) Then
   Dim myCookie As HttpCookie
   myCookie = New HttpCookie("UserSettings")
   myCookie.Expires = DateTime.Now.AddDays(-1D)
   Response.Cookies.Add(myCookie)
End If

کد
C#
if (Request.Cookies["UserSettings"] != null)
   {
      HttpCookie myCookie = new HttpCookie("UserSettings");
      myCookie.Expires = DateTime.Now.AddDays(-1d);
      Response.Cookies.Add(myCookie);
   }

نکات مهم :

به طور پیش فرض کوکی ها در تمام صفحاتی که دارای دامنه یکسان هستند ، مشترک بوده و رد و بدل می شوند . برای ایجاد محدودیت در دسترسی صفحات یک سایت به کوکی خاصی ، مسیر مورد نظرتان را بایستی در خاصیت Path آن تعیین نمایید .
همچنین چنانچه زمانی برای انقصای یک کوکی تعیین نکنید ، کوکی پس از بسته شدن مرورگر از بین می رود . پس اگر ماندگاری کوکی برایتان اهمیت دارد ، حتما تاریخ انقضایی برایش تعریف کنید .
نکته امنیتی مهم : مرورگر فقط می تواند کوکی را به سروری که قبلا آن را ایجاد نموده ، ارسال نماید . اما به هر حال ، هکرها و کاربران مخرب می توانند کوکی ها و مقادیر آنها را بخوانند . بنابراین اطلاعات حساس و مهم مثل رمز عبور را در کوکی ها ذخیره نکنید .



راجع این مطلب سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...         >>>>>  ورود به انجمن تخصصی


نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1 حمایت نمایید :

آیا مطالب این صفحه برای شما مناسب و مفید بوده است :

نام :                 
آدرس Email :    
 
نظر شما :  
 
سوال امنیتی : پایتخت ایران ؟      
حمایت از سایت Developer1