کوکی چیه ؟ممکنه برای شما هم پیش اومده باشه که در گوگل زبان خود رو انتخاب مي كنيد و دفعه بعد كه وارد گوگل مي شويد و زبان مورد نظر شما به طور اتوماتيك انتخاب شده است ویا اگر در Hotmail يك ايميل درست كرده ايد و اكنون بعد از چند روز دوباره وارد سايت Hotmail مي شويد تا با وارد كردن ID (يا شناسه ) و پسورد وارد ايميل خود شويد و مشاهده مي كنيد كه با باز شدن صفحه، ID شما از قبل نوشته شده است يا حتي اگر از قبل اين امكان را ايجاد كرده باشيد پسورد شما هم وارد شده فقط كافيست اينتر را بزنيد و وارد ايميل خود شويد.
همه اين كارها و بسياري از كارهاي ديگر اينچنيني بوسيله كوكي ها انجام مي شود در حقيقت از طريق كوكي ها سرور وب صفحات را مطابق عادت و سليقه شما باز مي كند و به اين طريق در وقت و حوصله شما صرفه جويي مي شود.هدف اصلي كوكي ها شناسايي كاربران است تا تنظيماتي را كه كاربر بنا بر سليقه خود دفعة قبل روي يك وب سايت مثلاً ياهو انجام داده اكنون هم بتواند صفحه را با همان تنظيمات دفعه قبل برايش باز كند.
Cookie چیست ؟
در حقیقت کوکی ها فایل های متنی کوچکی هستند که در کامپیوتر سرویس گیرنده ( client ( ذخیره میشوند. بسیاری از سایت های معروف مثل یاهو از این سیستم برای نگهداری برخی از اطلاعات کاربر استفاده می کنند . کوکی های قابلیت به رمز درآمدن را دارند و برای همین می توان امنیت آنها را تضمین کرد.
كوكي عبارت است از يك پيغام كه سرور به مرورگر ( Browser ) شما مي فرستد. مرورگر شما اين پيغام را در يك فايل متني ( Text ) ذخيره مي كند. پس از آن هر بار كه كه شما به آن سرور مراجعه مي كنيد ( يعني يك صفحه از وب سايتي را كه روي آن سرور قرار دارد باز مي كنيد. ) يا به عبارت ديگر هر بار كه مرورگر شما (مثلاً اينترنت اكسپلورر ) در خواست يك صفحه از آن سرور مي كند اين پيغام را به آن سرور باز مي گرداند.
روش استفاده از کوکی ها :
برای استفاده از کوکی ها به کلاس HttpCookie نیاز داریم ، این کلاس در فضا نام system.web وجود دارد
که به طور پیش فرض به صفحه کد نویسی ما اضافه شده است.
برای ساخت یک شی از این کلاس به شکل زیر عمل می کنیم :
(" Dim mycookie As New HttpCookie("login
فرض کنید در حال ایجاد یک سیستم ورود و تشخیص هویت هستیم . می خواهیم اطلاعات کاربر رو پس از اینکه هویتش تایید شد داخل یک کوکی نگهداری کنیم . بدین منظور از کد فوق برای ساخت یک کوکی استفاده می کنیم.
برای مقدار دهی به این کوکی به روش زیر عمل می کنیم :
mycookie.Value= username.Text
کد فوق مقدار کوکی ساخته شده را برابر مقدار نوشته شده در تکس باکس username قرار می دهد.
در صورتی که اطلاعات ما بیش از یک مقدار باشد می توانید به شکل زیر عمل کنید :
mycookie.Values("username") = Uid.Text
mycookie.Values("password") = password.Text
در این روش به جای استفاده از متد Value ازValues استفاده می کنیم که نام متغیر به صورت پارامتر به آن پاس می شود ( مانند username ,password ) و بوسیله عملگر ‘=’ مقدار دهی می گردد.
پس الان ما یک کوکی به نام login ساختیم که دارای دو متغیر username , password هست که این دو متغیر مقدار دهی شدند.
به صورت پیش فرض زمان انقضای کوکی ها زمانی است که مرورگر شما بسته شود ، اما می توان برای کوکی های زمان انتضا تعریف کرد . برای مثال فرض کنید در همین سیستم لوگین یک چک باکس قرار دادید که اگر کاربر آن را تیک زد دفعه بعد او را به خاطر پسپارد ودیگر از اون نام کاربری و پسوورد نخواهد.
برای این منظور در صورتی که کاربری چک باکس مربوطه (به نام rem)را تیک زده بود زمان انتقضای کوکی را به سال آینده موکول میکنیم :
If rem.Checked = True Then
mycookie.Expires = Date.Now.AddYears(1) End If
خوب پس از اعمال فوق کافیست کوکی که ساخته شده به را به مجموعه کوکی های سرویس گیرنده بیافزایید بدین منظور داریم :
(Response.Cookies.Add(mycooki
برای خواندن کوکی میتوانید از متد Request استفاده کنید .برای مثال در صفحه دیگری می خواهید چک کنید اگر کوکی مربوطه در کامپیوتر کاربر وجود دارد دیگر از اون نام کاربری و رمز نخواهید و مستقیما به او خوش آمد گویی کنید :
If Request.Cookies("login") Is Nothing Then
(" Response.Redirect("login.aspx
Else
+"Label1.Text =("welcome
( "Request.Cookies("login").Values("username
End If
در قطعه کد فوق که در ساب روتین مربوط به رخداد لود صفحه نوشته شده است در صورت موجود بودن کوکی Login به کاربر خوش آمد می گوییم در غیر این صورت کابر را برای تشخصی هویت به صفحه login هدایت می نماییم.
برای حذف کوکی میتوان به صورت زیر عمل کرد :
(" Response.Cookies.Remove("login
مشکلات کوکی ها:
۱.افراد معمولاً از كامپيوتر ها به طور مشترك استفاده مي كنند. هر كامپيوتري كه در يك مكان عمومي مانند محل كار يا حتي در خانه معمولاً به طور اشتراكي چند نفر از آن استفاده مي كنند. و چندين نفر در زمان هاي مختلف بوسيله اين كامپيوتر به اينترنت متصل مي شوند. كوكي ها نمي توانند نياز همه آنها را همزمان برآورده كنند. فرض كنيد از يك مكان عمومي مانند يك كافي نت در حال خريد از يك فروشگاه اينترنتي هستيد. اين فروشگاه اينترنتي روي كامپيوتري كه از آن براي خريد استفاده مي كنيد يك كوكي قرار مي دهد تا اگر بار ديگر وارد اين فروشگاه اينترنتي شديد حساب شما را استفاده كند. فروشگاههاي اينترنتي معمولاً در اين زمينه بسيار هشدار مي دهند. يا فرض كنيد كه شما با استفاده از كامپيوتر شخصي دوستتان از فروشگاه اينترنتي آمازون خريد كرده ايد و حال اگر دوستتان بعد از شما براي خريد وارد آمازون شود فقط با يك كليك مي تواند خريد كند البته با حساب شما!
۲.اگر كوكي ها پاك شوند. اگر شما با مرورگر خود ( مانند اينترنت اكسپلورر ) مشكل داريد. و از شركت پشتيباني كنندة اين مرورگر كمك بخواهيد ممكن است اولين چيزي كه به شما بگويند تا انجام دهيد پاك كردن temporary Internet files يا همان فايلهاي موقت اينترنتي در شاخه ويندوز باشد. زمانيكه اين كار را مي كنيد تمام كوكي ها را از دست مي دهيد و اگر سايتي را كه قبلاً بازديد كرده ايد بعد از اين عمل دوباره بازديد كنيد آن سايت شما را به عنوان يك كاربر جديد فرض خواهد كرد و براي شما يك كوكي جديد مي فرستد. و به همين علت است كه بعضي از سايتها از شما مي خواهند كه در آنها ثبت نام كنيد ( يا اصطلاحاً رجيستر شويد. ) جون اگر با يك كلمه كاربري ( User Name ) و يك كلمه عبور ( Password ) شما مي توانيد وارد حوزه شخصي خود در آن سايت شويد حتي اگر فايل كوكي را از دست داده باشيد.
۳.چندين كامپيوتر. افراد زيادي در روز از بيش از يك كامپيوتر براي دستيابي به اينترنت استفاده مي كنند. به عنوان مثال اگر شما يك كامپيوتر در محل كار و يك كامپيوتر در خانه و يك لپ تاپ براي خارج از اين دو محل استفاده مي كنيد براي هر كامپيوتري كه با آن به يك وب سايت متصل مي شويد كوكي هاي جداگانه براي هر كامپيوتر ارسال مي شود و اين سبب مي شود كه تنظيمات خود را براي هر كامپيوتر به طور جداگانه انجام دهيد كه خسته كننده است.
حل مشكلات مذكور احتمالاً به همين سادگي ها هم نيست مگر اينكه از كاربر خواسته شود در سايت مذكور ثبت نام كند.
مدیریت کوکی ها:
پس از هر اتصال به اينترنت تمامی فعاليت های شما در درون بخش Cookie ويندوز و در فايل هايی با فرمتهای مختلف ذخيره خواهد شد. در درون Cookie ها ميتونه نام سايتهای ديده شده وکارهايی که در آن سايتها انجام داده ايم ذخيره شود. چگونه ميتونيم به اين Cookie ها دسترسی داشته باشيم و اونا رو کنترل کنيم و يا مثل روز اول همگی رو پاک کنيم؟
Cookie Remover Platinum 2004 نرم افزاری خوب برای مديريت تمامی Cookie ها که شامل فايلهای *.asp, *.css, *.gif, *.jpg, *.js, *.txt و بسياری از فرمتهای ديگر ميباشد. علاوه بر نشان دادن آدرس سايت ديده شده با کليک بر روی آن مکان کوکی را نيز به شما نشان ميدهد که در نوع خودش جالب توجه ميباشد.
Remover Platinum 2004 علاوه بر مديريت کوکی ها يک Uninstaller خوب و زيبا نيز با خودش داره که با كمك به آسونی از شر نرم افزارهای ناخواسته خلاص مي شويم! اين دو نرم افزار خوب و مفيد رو ميتونيم دانلود کنید.منبع برای دانلود
منبع2 منبع3