Consimțământul pentru cookie-uri pentru aplicațiile web progresive (PWA): un ghid pentru editori
De ce PWA-urile sunt un caz limită pentru consimțământ
O aplicație web progresivă se comportă ca o aplicație nativă — se instalează pe ecranul de pornire, funcționează offline și pune în cache agresiv — dar este în continuare servită dintr-un browser, deci se aplică regulile pentru cookie-uri și stocare web. Această natură hibridă este exact ceea ce îi face pe editori să se împiedice: aceleași obligații de consimțământ GDPR ca orice site web, suprapuse peste service workers și cache-uri persistente care pot păstra în tăcere date și scripturi după ce un utilizator a spus nu.
Unde stochează PWA-urile lucrurile
Înainte de a putea condiționa stocarea de consimțământ, trebuie să cunoști fiecare loc în care un PWA poate păstra date:
- Cookie-uri — suprafața clasică, guvernată de consimțământ ca întotdeauna.
- LocalStorage / IndexedDB — folosite adesea pentru starea aplicației, dar și pentru analitice și identificatori publicitari.
- Cache Storage — service worker-ul poate pune în cache scripturi terțe (analitice, SDK-uri publicitare) astfel încât să ruleze chiar și offline.
- Service worker-ul în sine — persistă între sesiuni și poate reînregistra urmărirea la următoarea lansare.
Consimțământul trebuie să guverneze toate acestea, nu doar document.cookie.
Modelul de service worker cu consimțământul-mai-întâi
Principiul de bază: service worker-ul trebuie să citească starea consimțământului înainte de a pune în cache sau de a executa orice resursă terță neesențială. Un model curat arată astfel:
- Stochează semnalul de consimțământ undeva unde service worker-ul îl poate citi — IndexedDB sau o intrare de cache pe care CMP-ul o actualizează la fiecare alegere.
- În handler-ul
fetchal service worker-ului, refuză să pui în cache endpoint-urile de analitice/publicitate dacă nu este prezent consimțământul pentru acel scop. - Când un utilizator retrage consimțământul, trimite un mesaj către service worker pentru a elimina scripturile de urmărire din cache și a curăța magazinele IndexedDB relevante.
Omiterea acestui ultim pas este cea mai comună lacună de conformitate a PWA-urilor: bannerul spune “respins,” dar un script de analitice din cache continuă să se declanșeze din service worker la următoarea lansare offline.
UX-ul consimțământului offline
PWA-urile pot porni fără rețea. Bannerul tău de consimțământ și alegerea stocată a utilizatorului trebuie să funcționeze ambele offline — pune în cache interfața CMP-ului în sine și nu seta niciodată implicit “acordat” doar pentru că serverul de consimțământ este inaccesibil. Dacă nu poți confirma o alegere anterioară, tratează utilizatorul ca neconsimțit și servește doar funcționalitatea esențială până când poți.
Implicații asupra veniturilor publicitare
Pentru PWA-urile susținute de publicitate, starea consimțământului trebuie să ajungă la SDK-ul tău publicitar la momentul cererii, online sau offline. Un PWA cablat corect transmite șirul IAB TCF și semnalele Consent Mode v2 partenerilor de cerere exact ca un site normal; unul configurat greșit pune în cache o stare învechită de “fără consimțământ” și prăbușește eCPM-ul tău la tarife nepersonalizate pe termen nelimitat. Tratează prospețimea consimțământului ca pe o metrică de venit.
Cum ajută FlexyConsent
FlexyConsent stochează înregistrarea consimțământului într-un magazin care poate fi citit de service worker, emite semnale TCF și Consent Mode v2 care supraviețuiesc lansărilor offline și expune un hook de retragere pe care îl poți conecta la eliminarea cache-ului — astfel încât PWA-ul tău rămâne conform și stiva ta publicitară păstrează cel mai proaspăt semnal de consimțământ posibil pe fiecare suprafață.
Concluzii cheie
- PWA-urile se confruntă cu toate obligațiile de consimțământ GDPR plus complicațiile de service worker și cache.
- Condiționează cookie-urile, LocalStorage, IndexedDB și Cache Storage de consimțământ — nu doar cookie-urile.
- La retragere, elimină scripturile de urmărire din cache și curăță identificatorii stocați.
- Păstrează starea consimțământului proaspătă și sigură offline astfel încât veniturile publicitare să nu rămână blocate la tarife nepersonalizate.