Назад к вопросам
Junior
71
questionbank
Кто имеет доступ к данным, хранящимся в local storage, session storage и cookies?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Доступ к данным в web storage (localStorage, sessionStorage) имеют:
- Скрипты на той же веб-странице, которые установили или изначально загрузили данные. Это ограничено Same-Origin Policy.
Доступ к данным в cookies имеют:
- Скрипты на той же веб-странице, которые установили или имеют доступ к не HTTP-only кукам.
- Сервер, который установил куку, при каждом последующем запросе от клиента в пределах того же домена.
Важно:
- Данные в
localStorageиsessionStorageнедоступны напрямую для сервера. - Куки с флагом
HttpOnlyнедоступны для JavaScript на стороне клиента. - Доступ ко всем типам Local Storage и Cookie ограничен протоколом, доменом и портом (Same-Origin Policy).
Таблица сравнения доступа:
| Тип хранилища | Доступ с клиента (JS) | Доступ с сервера (HTTP) | Ограничение доступа |
|---|---|---|---|
| localStorage | Да | Нет | Same-Origin Policy |
| sessionStorage | Да | Нет | Same-Origin Policy |
| Cookies | Да (если не HttpOnly) | Да | Same-Origin Policy |
Пример доступа к localStorage из JavaScript:
// Запись данных
localStorage.setItem('userName', 'Alex');
// Чтение данных
const userName = localStorage.getItem('userName');
console.log(userName); // Выведет 'Alex'
Пример HTTP-заголовка с куками:
GET /page HTTP/1.1
Host: example.com
Cookie: sessionid=abcdef; user=Alex