Roziligni qayerda saqlash kerak: cookie, localStorage va server tomonidagi yozuvlar taqqoslanishi
Ikki xil vazifa
Tashrif buyuruvchi rozilik tanlovini qilganda, ikkita alohida narsa sodir boʻlishi kerak. Birinchidan, banner har bir sahifada qayta paydo boʻlmasligi va teglar nima qilishga ruxsati borligini bilishi uchun brauzer tanlovni eslab qolishi kerak. Ikkinchidan, tanlov qilinganini, tashrif buyuruvchiga nima koʻrsatilganini va qachon ekanini keyinroq isbotlashingiz kerak boʻlishi mumkin. Bu vazifalar koʻpincha turli saqlash mexanizmlari bilan hal qilinadi va ularni aralashtirib yuborish haqiqiy muammolarga olib keladi: qayta-qayta paydo boʻlaveradigan bannerlar, ayrim brauzerlarda yoʻqolib qoladigan tanlovlar yoki kimdir soʻraganda koʻrsatadigan yozuvning yoʻqligi.
Ushbu taqqoslash uchta keng tarqalgan variantni — birinchi tomon cookie fayllari, localStorage kabi brauzer saqlash joyi va server tomonidagi rozilik yozuvlarini — va ularning har biri qayerga mosligini koʻrib chiqadi.
1-variant: Birinchi tomon cookie fayllari
Cookie fayllari rozilik holatining anʼanaviy joyi. TCF CMP lari rozilik qatorini odatda birinchi tomon cookie faylida saqlaydi, koʻplab CMP lar oʻzlarining sozlamalar maʼlumotlarini ham shunday saqlaydi.
Kuchli tomonlari
- Server oʻqiy oladi. Cookie har bir soʻrov bilan yuboriladi, shuning uchun server tomoni kodi, edge mantiqi va server tomonidagi teglash tanlovni JavaScript ni kutmasdan oʻqiy oladi.
- Subdomenlar oʻrtasida ulashish mumkin. Roʻyxatdan oʻtkaziladigan domeningizda oʻrnatilgan cookie www, blog va shop subdomenlarini qamrab olishi mumkin.
- Keng kutiladi. Koʻplab reklama texnologiyasi integratsiyalari rozilikni cookie larda qidiradi.
Zaif tomonlari
- Hajm cheklovlari. Brauzerlar cookie hajmini taxminan 4 KB bilan cheklaydi, koʻp vendorli TCF qatori va boshqa qiymatlar bu chegaraga yaqinlashishi mumkin.
- Soʻrov yuklamasi. Domeningizga har bir soʻrov, jumladan rasm va skript soʻrovlari ham cookie ni olib yuradi.
- Baʼzi brauzerlarda umr cheklovi. Safari ning Intelligent Tracking Prevention funksiyasi JavaScript orqali yaratilgan cookie fayllarini maksimal yetti kunlik umr bilan cheklaydi. Oʻz serveringiz HTTP javobida oʻrnatgan cookie larga odatda saxiyroq munosabatda boʻlinadi, ammo istisnolar bor.
2-variant: localStorage va boshqa brauzer saqlash joylari
Baʼzi CMP lar batafsil sozlamalarni localStorage da, baʼzan kichikroq cookie bilan birga saqlaydi.
Kuchli tomonlari
- Koʻproq joy. Har bir origin uchun bir necha megabayt, vendor darajasidagi batafsil tanlovlar uchun yetarli.
- Soʻrov yuklamasi yoʻq. Serverga avtomatik hech narsa yuborilmaydi.
Zaif tomonlari
- Server uchun koʻrinmas. Server tomoni kodi va edge mantiqi uni oʻqiy olmaydi, shuning uchun serverdagi har qanday qaror brauzerni kutishi kerak.
- Bitta origin ga bogʻlangan. www.example.com dagi saqlash shop.example.com da mavjud emas, shuning uchun tashrif buyuruvchi bannerni har bir subdomenda qayta koʻrishi mumkin.
- Oʻchirilishi mumkin. Safari foydalanuvchi brauzerdan foydalanishning yetti kuni davomida oʻzaro taʼsir qilmagan saytlar uchun skript yoza oladigan saqlash joyini, jumladan localStorage ni olib tashlashi mumkin, maxfiy koʻrish rejimlari esa odatda sessiya tugaganda uni tozalaydi.
3-variant: Server tomonidagi rozilik yozuvlari
Server tomonidagi yozuv — tanlov qilinganda siz yoki CMP provayderingiz saqlaydigan qaydnoma. U odatda psevdonim identifikator, vaqt tamgʻasi, tanlovlar, koʻrsatilgan banner yoki siyosat versiyasi hamda hudud kabi kontekstni oʻz ichiga oladi.
Kuchli tomonlari
- Bardoshli dalil. U cookie ni tozalash va brauzer cheklovlaridan omon qoladi, shuning uchun rozilik olinganini koʻrsatish uchun toʻgʻri vosita.
- Audit qilish mumkin. Tanlovlar boʻyicha vaqt davomida hisobot berishingiz va muayyan hodisalar haqidagi savollarga javob berishingiz mumkin.
- Qurilmalararo imkoniyat. Tizimga kirgan oʻquvchilar uchun server yozuvi, bu haqda ularga tushuntirsangiz, tanlovlarni qurilmalar oʻrtasida sinxronlashi mumkin.
Zaif tomonlari
- Lokal holatning oʻrnini bosmaydi. Brauzerdagi teglarga baribir tez, lokal signal kerak; rozilikni qidirish uchun har bir sahifa koʻrishda serverga murojaat qilish kechikish qoʻshadi.
- Oʻzi shaxsiy maʼlumot. Yozuvlar saqlash muddati, kirish nazorati va maxfiylik bildirishnomangizda oʻrin talab qiladi.
- Identifikatorga bogʻliqlik. Anonim tashrif buyuruvchilarni yozuvga faqat qurilmasida saqlangan identifikator orqali moslashtirish mumkin, bu sizni yana lokal saqlashga qaytaradi.
Yonma-yon xulosa
- Veb-da tanlovni eslab qolish uchun eng yaxshisi: birinchi tomon cookie fayllari, ideal holda barqaror umr uchun serveringiz oʻrnatgan.
- Brauzerda batafsil sozlamalar maʼlumotlari uchun eng yaxshisi: localStorage, server oʻqiy oladigan cookie bilan juftlangan.
- Tanlovni isbotlash uchun eng yaxshisi: server tomonidagi yozuvlar.
- Yagona variant sifatida eng yomoni: faqat localStorage ga tayanish, bu serverni koʻr qoldiradi va tanlovni ayrim brauzerlarda moʻrt qiladi.
Amaliy birlashtirilgan yondashuv
- Ishonchli lokal signalni — masalan, TCF qatorini va ixcham sozlamalar yozuvini — roʻyxatdan oʻtkaziladigan domeningiz bilan cheklangan birinchi tomon cookie faylida saqlang.
- localStorage dan faqat serverga yetib borishi shart boʻlmagan qoʻshimcha maʼlumotlar uchun foydalaning.
- Har bir tanlov uchun, jumladan koʻrsatilgan banner va siyosat versiyasi bilan server tomonidagi yozuv yozing.
- Saqlangan tanlov yoʻqolsa, oldingi javobni faraz qilmasdan, bannerni qayta koʻrsating.
- Saqlangan tanlovlar uchun qayta soʻrash davrini belgilang va uni siyosatingizda qayd eting.
Tashrif buyuruvchining rozilik tanlovining oʻzini saqlash odatda tashrif buyuruvchi soʻragan xizmatni koʻrsatish uchun zarur deb hisoblanadi — uning qarorini eslab qolish — lekin asosiy bozorlaringizda qoʻllanadigan yoʻriqnomani tekshiring.
Asosiy xulosalar
- Tanlovni eslab qolish va uni isbotlash turli saqlash joyini talab qiladigan turli vazifalar.
- Cookie fayllarini server oʻqiy oladi va subdomenlar oʻrtasida ulashish mumkin, lekin hajmi va Safari da skript oʻrnatganda umri cheklangan.
- localStorage joy beradi, lekin server uchun koʻrinmas va brauzerlar tomonidan tozalanishi mumkin.
- Server tomonidagi yozuvlar dalil qatlami, lokal signalning oʻrnini bosmaydi.
- Server oʻrnatgan birinchi tomon cookie, ixtiyoriy brauzer saqlash joyi va server yozuvlarini birlashtiring.