Назад к вопросам

Ответ от нейросети

sobes.tech AI

Небольшие фрагменты данных, которые веб-сайт отправляет в браузер пользователя и сохраняет на его устройстве. Используются для запоминания информации о пользователе, такой как предпочтения, состояние авторизации или содержимое корзины покупок, между сеансами или посещениями сайта.

Основные типы:

  • Сессионные (Session Cookies): Временно хранятся в памяти и удаляются при закрытии браузера.
  • Постоянные (Persistent Cookies): Хранятся на диске пользователя в течение заданного срока или до ручного удаления.

Основные атрибуты:

  • Name: Имя cookie.
  • Value: Значение cookie.
  • Domain: Домен, для которого действуют cookie.
  • Path: Путь внутри домена, для которого действуют cookie.
  • Expires / Max-Age: Срок действия cookie.
  • Secure: cookie отправляются только по HTTPS.
  • HttpOnly: cookie недоступны через JavaScript.

Передача cookie происходит между сервером и браузером посредством заголовков HTTP:

  • Сервер отправляет cookie в заголовке Set-Cookie.
  • Браузер отправляет сохраненные cookie в заголовке Cookie при последующих запросах к тому же домену.

Пример работы в Flask:

# Установка cookie
from flask import Flask, make_response

app = Flask(__name__)

@app.route('/set_cookie')
def set_cookie():
    response = make_response("Cookie установлен!")
    response.set_cookie('username', 'john_doe', max_age=3600) # Срок действия: 1 час
    return response

# Чтение cookie
from flask import request

@app.route('/get_cookie')
def get_cookie():
    username = request.cookies.get('username')
    if username:
        return f"Привет, {username}!"
    else:
        return "Cookie не найден."

Влияние на приватность:

Cookie могут использоваться для отслеживания активности пользователя по различным сайтам, что вызывает вопросы о приватности. Потому существуют механизмы для контроля и управления cookie в браузерах.