Функция Cookie
Функция Cookie применяется внутри функции-обработчика маршрута
и объявляет параметр, значение которого FastAPI берёт из cookie
входящего HTTP-запроса. Первым аргументом передаётся значение
по умолчанию, далее идут именованные параметры: alias,
title, description и другие. Если параметр назван так же,
как cookie, дополнительно указывать alias не нужно.
Имя cookie по умолчанию совпадает с именем параметра.
Если имя параметра в Python не совпадает с именем cookie,
используется параметр alias.
Синтаксис
Cookie(default, *, alias=None, title=None, description=None)
Пример
Давайте прочитаем cookie с именем user в обработчике:
from fastapi import FastAPI, Cookie
app = FastAPI()
@app.get('/')
def index(user: str = Cookie(default='abcde')):
return {'user': user}
Результат выполнения кода при отсутствии cookie:
{"user": "abcde"}
Пример
Давайте зададим alias для cookie, имя которого не совпадает с именем параметра:
Теперь FastAPI читает cookie с именем session_id,
а значение попадает в параметр user.
Результат выполнения кода:
{"user": "abcde"}
Пример
Давайте объявим несколько cookie сразу:
from fastapi import FastAPI, Cookie
app = FastAPI()
@app.get('/')
def index(user: str = Cookie(default='abcde'), token: str = Cookie(default='hello')):
return {'user': user, 'token': token}
Результат выполнения кода при отсутствии cookie:
{"user": "abcde", "token": "hello"}