Атрибут cookies
Атрибут cookies применяется к объекту запроса
Request и возвращает словарь, содержащий
все cookie, которые клиент отправил вместе с запросом.
Ключами словаря выступают имена cookie,
а значениями - их строковые значения.
Атрибут доступен как обычное свойство
и не требует вызова.
Синтаксис
request.cookies
Пример
Давайте получим объект запроса через зависимость и выведем все cookie в ответе:
from fastapi import FastAPI, Request
app = FastAPI()
@app.get('/')
def index(request: Request):
return {'cookies': request.cookies}
Результат выполнения кода для запроса
с cookie user=abcde:
{"cookies": {"user": "abcde"}}
Пример
Давайте прочитаем конкретную cookie по имени
через метод get:
from fastapi import FastAPI, Request
app = FastAPI()
@app.get('/')
def index(request: Request):
user = request.cookies.get('user')
return {'user': user}
Результат выполнения кода для запроса
с cookie user=abcde:
{"user": "abcde"}
Если cookie с таким именем нет, метод get
вернёт None:
{"user": null}
Пример
Давайте зададим значение по умолчанию
вторым аргументом метода get:
from fastapi import FastAPI, Request
app = FastAPI()
@app.get('/')
def index(request: Request):
user = request.cookies.get('user', 'guest')
return {'user': user}
Результат выполнения кода для запроса без cookie:
{"user": "guest"}
Смотрите также
-
класс
Request,
который представляет HTTP-запрос целиком -
атрибут
headers,
который возвращает заголовки запроса -
атрибут
query_params,
который возвращает параметры строки запроса -
атрибут
client,
который возвращает данные клиента