آموزش  کوکی ها در جاوا اسکریپت

4 سال پیش
امتیاز دهید post

آموزش  کوکی ها در جاوا اسکریپت

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

کوکی ها چیست؟

مرورگرها و سرورهای وب از پروتکل HTTP برای برقراری ارتباط استفاده می کنند و HTTP یک پروتکل بدون حالت است. اما برای یک وب سایت تجاری ، لازم است اطلاعات جلسه را در میان صفحات مختلف حفظ کنید. به عنوان مثال ، یک ثبت نام کاربر پس از تکمیل بسیاری از صفحات پایان می یابد. اما نحوه نگهداری اطلاعات جلسه کاربران در همه صفحات وب متفاوت است.

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

چگونه کار می کند؟

سرور شما برخی از داده ها را به صورت کوکی به مرورگر بازدید کننده می فرستد. مرورگر ممکن است کوکی را بپذیرد. در صورت وجود، به عنوان یک متن ساده در هارد دیسک بازدید کننده ذخیره می شود. اکنون ، وقتی بازدید کننده به صفحه دیگری از سایت شما می رسد، مرورگر همان کوکی را برای بازیابی به سرور می فرستد. پس از بازیابی ، سرور شما می داند چه چیزی قبلاً ذخیره شده بود.

کوکی ها یک رکورد داده ساده متنی از 5 فیلد با طول متغیر هستند –

  • Expires – تاریخ انقضا کوکی. اگر این مورد خالی باشد، هنگامی که بازدید کننده از مرورگر خارج می شود، کوکی منقضی می شود.
  • Domain – نام دامنه سایت شما.
  • Path – مسیری به فهرست یا صفحه وب است که کوکی را تنظیم می کند. اگر می خواهید کوکی را از هر فهرست یا صفحه ای بازیابی کنید ، این ممکن است خالی باشد.
  • Secure – اگر این قسمت شامل کلمه “Secure” باشد ، کوکی فقط با یک سرور امن بازیابی می شود. اگر این قسمت خالی باشد ، محدودیتی وجود ندارد.
  • Name=Value – کوکی ها به صورت جفت کلید-مقدار تنظیم و بازیابی می شوند

 

کوکی ها در ابتدا برای برنامه نویسی CGI طراحی شده اند. داده های موجود در یک کوکی به طور خودکار بین مرورگر وب و سرور وب منتقل می شود ، بنابراین اسکریپت های CGI در سرور می توانند مقادیر کوکی ذخیره شده در مشتری را بخوانند و بنویسند.

جاوا اسکریپت همچنین می تواند کوکی ها را با استفاده از خاصیت کوکی شی Document دستکاری کند. جاوا اسکریپت می تواند کوکی هایی را که برای صفحه وب فعلی اعمال می شوند ، بخواند ، ایجاد کند ، تغییر دهد و حذف کند.

ذخیره کوکی ها

ساده ترین راه برای ایجاد کوکی اختصاص دادن مقدار رشته به شی document.cookie است که به این شکل است.

 

در اینجا ویژگی منقضی شده اختیاری است. اگر این ویژگی را با تاریخ یا زمان معتبری ارائه دهید ، کوکی در تاریخ یا ساعت معینی منقضی می شود و پس از آن ، مقدار کوکی ها قابل دسترسی نخواهد بود.

توجه – مقادیر کوکی ممکن است شامل نقطه ویرگول ، ویرگول یا فضای سفید نباشد. به همین دلیل ، ممکن است بخواهید از تابع ()Escape  جاوا اسکریپت برای رمزگذاری مقدار قبل از ذخیره آن در کوکی استفاده کنید. اگر این کار را انجام دهید ، هنگام خواندن مقدار کوکی ، مجبور خواهید بود از تابع ()unescape مربوطه نیز استفاده کنید.

مثال

موارد زیر را امتحان کنید. نام مشتری را در کوکی ورودی تنظیم می کند.

 

اکنون دستگاه شما یک کوکی به اسم name دارد. می توانید چندین کوکی را با استفاده از چند key = value از هم جدا شده با کاما تنظیم کنید.

خواندن کوکی ها

خواندن یک کوکی به همان اندازه نوشتن یک کوکی ساده است ، زیرا مقدار document.cookie کوکی است. بنابراین هر زمان که بخواهید به کوکی دسترسی پیدا کنید می توانید از این رشته استفاده کنید. رشته Document.cookie لیستی از جفت های name=value را با نقطه ویرگول از هم جدا می کند ، جایی که name نام کوکی است و مقدار نیز مقدار رشته آن است.

می توانید از تابع ()split رشته ها برای شکستن یک رشته به کلید و مقادیر به شرح زیر استفاده کنید –

مثال

برای بدست آوردن همه کوکی ها ، مثال زیر را امتحان کنید.

 

توجه – در اینجا length روشی از کلاس Array است که طول یک آرایه را برمی گرداند. ما در آرایه ها در یک فصل جداگانه بحث خواهیم کرد. در آن زمان ، لطفا سعی کنید آن را هضم کنید.

توجه – ممکن است کوکی های دیگری از قبل روی دستگاه شما تنظیم شده باشد. کد بالا تمام کوکی های تنظیم شده روی دستگاه شما را نمایش می دهد.

تنظیم تاریخ انقضا کوکی ها

با تنظیم تاریخ انقضا و ذخیره تاریخ انقضا در کوکی، می توانید عمر یک کوکی را فراتر از جلسه فعلی مرورگر افزایش دهید. این کار را می توان با تنظیم ویژگی ‘expires’ به تاریخ و زمان انجام داد.

مثال

مثال زیر را امتحان کنید. این نشان می دهد که چگونه تاریخ انقضا یک کوکی را 1 ماه تمدید کنید.

 

حذف کوکی

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

مثال

مثال زیر را امتحان کنید. این روش نحوه حذف کوکی را با تعیین تاریخ انقضا یک ماه عقب از تاریخ فعلی، نشان می دهد.

 

منبع.

لیست جلسات قبل آموزش جاوا اسکریپت

  1. آموزش جاوا اسکریپت
  2. نگاه کلی به آموزش جاوا اسکریپت 
  3. آموزش نحو در جاوا اسکریپت
  4. آموزش فعال کردن جاوا اسکریپت در مرورگرها
  5. آموزش قرارگیری در فایل HTML در جاوا اسکریپت
  6. آموزش متغیرها در جاوا اسکریپت
  7. آموزش عملگرها در جاوا اسکریپت 
  8. آموزش دستور if-else در جاوا اسکریپت 
  9. آموزش دستور switch case در جاوا اسکریپت
  10. آموزش حلقه while در جاوا اسکریپت
  11. آموزش حلقه for در جاوا اسکریپت
  12. آموزش حلقه for…in در جاوا اسکریپت  
  13. آموزش کنترل حلقه در جاوا اسکریپت
  14. آموزش توابع در جاوا اسکریپت
  15. آموزش رویدادها در جاوا اسکریپت
امتیاز دهید post
0
برچسب ها :
نویسنده مطلب saber

دیدگاه شما

بدون دیدگاه