Как ли уеб сайт си спомня предпочитанията си за него (и избора за бисквитките)?
Как уебсайтовете помнят вашите предпочитания за тях (или желание за липса на такива) и какво ще кажете за самите чувствителни теми? Днешната публикация за въпроси и отговори на SuperUser се опитва да осветли как работят бисквитките и информацията, която съхраняват за объркан четец.
Днешната сесия за въпроси и отговори идва при нас с любезното съдействие на SuperUser - подразделение на Stack Exchange, групирано от общността уеб сайтове за въпроси и отговори.
Снимката е предоставена от Педро Везини (Flickr).
Въпроса
Читателят на SuperUser Ruud Lenders иска да научи повече за това как работят предпочитанията и „бисквитките“ за уебсайтовете:
Изскачащ прозорец, показан на уебсайт, който посетих, и ме попита дали ще разреша на уебсайта да съхранява предпочитания в „бисквитки“. По случайност избрах не. Опресняване на страницата не води до връщане на изскачащите прозорци. Има ли начин да получите този вид поп-нагоре, без да изчиствате историята и бисквитките?
Това също ме накара да мисля. Как може сайтът да си спомни дали е позволено да се съхраняват бисквитки? Чрез запазването му в бисквитка?
Как един уебсайт помни вашите предпочитания за него като цяло и за избора ви относно „бисквитките“ като цяло?
Отговорът
Сътрудникът на SuperUser bvukelic има отговор за нас:
Попитаха те дали искаш предпочитания за съхранение в „бисквитки“, а не ако искате те да задават „бисквитки“ като цяло. Така че, ако пиша поддръжка за тази функция, ще поставя отделна „бисквитка“ (nopref) и проверете дали потребителят има тази „бисквитка“. Има добър шанс да намерите такава „бисквитка“ за този уебсайт, която можете да изчистите, без да премахвате други „бисквитки“ или история.
Проверка на Cookies, зададени за конкретна страница
В Firefox можете да посочите „бисквитки“ за определена уеб страница, като щракнете с десния бутон на мишката върху празна част от страницата и след това изберете Преглед на информация за страницата опция. Ще намерите a Преглед на „бисквитките“ в бутона Раздел Защита. В Chrome имате същото Преглед на информация за страницата опция, която отваря диалогов прозорец, който виси от адресната лента. Връзката в горната част ще ви отведе до списък с „бисквитки“. Предполагам, че подобни функции могат да бъдат намерени и в други браузъри.
Откриване дали даден уебсайт задава бисквитка
Ето един начин да откриете какво прави уебсайтът. Посетете уебсайта в Режим „инкогнито“. Отвори Инструменти за разработчици и превключване към Tab на мрежата. След това проверете каква дейност се осъществява във фонов режим, когато откажете да ви проследява сайта с „бисквитки“. По-конкретно, потърсете заглавията на отговорите и вижте дали има такива Set-Cookie там. След това опитайте да изтриете бисквитките, споменати в заглавието, за да видите дали има някаква разлика.
Относно localStorage
Тъй като друг плакат е споменал localStorage (база данни в браузъра), ще коментирам и това. Мисля, че ще бъде много рядко уебсайтът да използва localStorage за тази цел, тъй като данните за localStorage не са достъпни за сървъра, освен ако няма JavaScript код, който изпраща данните обратно към сървъра. Ако искате да проверите съдържанието на localStorage, най-бързият начин е да отворите Инструменти за разработчици в браузъра си отидете на (JavaScript) Конзола Tab, и въведете localStorage. Това трябва да ви даде изход, който изглежда по следния начин:
- Складова памет someKey: "стойност", дължина: 1
SomeKey идентифицира стойността, зададена от JavaScript на уеб страницата, която сте включили. Ако смятате, че някои ключови думи са подходящи, можете да ги изтриете, като изпълните следното:
- localstorage.removeItem ( "someKey ');
Това премахва данните от някой ключ от localStorage и презареждането на уеб страницата може да го възстанови до фабричните настройки. Ако не сте сигурни, че конкретният ключ е зададен от функцията за уведомяване за „бисквитките“, можете да отворите уеб страницата в Режим „инкогнито“ и избройте съдържанието на localStorage преди да взаимодействате с уеб страницата.
Отново се съмнявам, че много сайтове използват localStorage за тази цел.
Имате ли какво да добавите към обяснението? Звучи в коментарите. Искате ли да прочетете повече отговори от други технологични потребители на Stack Exchange? Вижте пълната тема за дискусия тук.