Khachatryan-dev

Ի՞նչ է Cookie-ը

Ի՞նչ է Cookie-ը և ինչպես է աշխատում

Aram
Khachatryan

Ի՞նչ է Cookie-ը և ինչպես է աշխատում


Cookies-ը փոքր տվյալներ են, որոնք տեղավորվում են օգտագործողի բրաուզերում՝ սերվերի կողմից։ Դրանք օգտագործվում են հաճախորդների մոտ տեղեկատվություն պահելու և հետագայում օգտագործելու նպատակով՝ առանց անհրաժեշտության ամեն անգամ նորից հարցում կատարել սերվերին։ Օրինակ՝ երբ այցելում ենք մի կայք և մուտք գործում, cookie-ն կարող է պահել մեր մուտքի տվյալները, որպեսզի մեր առաջընթացը պահպանվի մինչև հաջորդ այցը։


Cookies-ը համարվում են շատ կարևոր՝ հատկապես դոմենային պահպանման և օգտագործողի վավերացման (authentication) գործընթացներում։ Սակայն դրանք նաև ունեն սահմանափակումներ՝ կապված նրանց չափի, անվտանգության և կյանքի տևողության հետ։



Ինչպես աշխատում է Cookie-ը


Cookie-ը ստեղծվում է սերվերի կողմից, երբ օգտագործողը այցելում է կայք։ Այն ուղարկվում է սերվերին հետագա հարցումների ժամանակ՝ ապահովելով, որ սերվերը գիտի, թե ով է այցելում։ Երբ բրաուզերը ստանում է cookie-ն, պահում է այն և փոխանցում է հետագա հարցումներում։


  
document.cookie = "user=JohnDoe; expires=Thu, 31 Dec 2025 12:00:00 UTC; path=/";

Այս կոդով մենք ստեղծում ենք մի cookie՝ "user" անունով, որի արժեքը "JohnDoe" է։ Մենք նաև կարող ենք որոշել expiry (չեղարկման ժամկետը)՝ երբ cookie-ն պետք է չեղարկվի, և path (պատվիրված ուղին), որը սահմանում է, թե որ էջերին է հասանելի cookie-ն։




Cookies-ի տեսակներ


Cookies-ը կարող են լինել մի քանի տեսակների՝ կախված դրանց օգտագործման նպատակներից։ Ահա նրանց հիմնական տեսակները։


  • Session cookies — Այս cookies-ը լիցքավորվում են միայն տվյալ session-ի ընթացքում։ Երբ օգտատերը փակել է բրաուզերը կամ session-ը ավարտվում է, cookies-ը կորչում է։
  • Persistent cookies — Այս cookies-ը պահվում են մինչև իսկապես որոշված ժամանակի ավարտը, նույնիսկ եթե բրաուզերն փակված է։ Այս տեսակի cookies-ը սովորաբար օգտագործվում է՝ օրինակ՝ մուտքագրման հիշեցման համար։
  • Secure cookies — Հատուկ cookies, որոնք կարող են փոխանցվել միայն https:// կայքի միջոցով՝ ապահովելով տվյալների անվտանգությունը։
  • HttpOnly cookies — Այս cookies-ը հասանելի են միայն HTTP հարցումների ժամանակ և չեն կարող վերահսկվել JavaScript-ի կողմից՝ պաշտպանելով XSS հարձակումներից։



Cookies-ի առավելություններ և թերություններ


Առավելությունները:

  • Դրանք թույլ են տալիս պահպանել օգտատիրոջ նախընտրությունները կամ մուտքի տվյալները՝ առանց յուրաքանչյուր անգամ մուտք գործելու պահանջելու։
  • Օգտագործվում են հետևելու համար՝ երբ ուզում ենք դիտարկել օգտատերերի վարքագիծը (analytics)։
  • Սովորաբար անվտանգ են օգտագործման ժամանակ, եթե հստակ սահմանվեն անվտանգության դրույթները (օր.՝ Secure, HttpOnly, SameSite flags)։

Թերությունները:

  • Ունեն չափային սահմանափակումներ (մոտ 4KB-ը մեկ cookie-ի համար)։
  • Խոցելի են մի շարք հարձակումների համար՝ օրինակ՝ XSS և CSRF։
  • Դրանք կարող են խանգարել օգտատիրոջ գաղտնիությանը, քանի որ tracking cookies-ը կարող են հավաքել տվյալներ առանց նրանց բացահայտման։



Վերջաբան


Cookie-ն կարևոր գործիք է վեբ հավելվածներում՝ հատկապես օգտագործողի վիճակը պահելու և վավերացումը իրականացնելու համար։ Այնուամենայնիվ, պետք է ուշադրություն դարձնել անվտանգությանը՝ ճիշտ նշելով cookie-ի տարբերակի սահմանափակումները, օրինակ՝ `Secure` և `HttpOnly` դրույթները։ Հաջորդ հոդվածում կքննարկենք մյուս հայտնի մեթոդը՝ LocalStorage-ը։

5.00 / 1
Buy me a coffee
  • 0
  • 45

Բացահայտիր Նոր գիտելիքներ

Մեկնաբանություններ
No data
Մեկնաբանություն չկա։ Կարող ես լինել առաջինը։
Գրել մեկնաբանություն
ՄԵկնաբանություն ավելացնելու համար պետք է մուտք գործելՄուտք